.c2{background:var(--color-bg)}.c2-h2{font-size:clamp(28px,3vw,42px);font-weight:800;letter-spacing:-.035em;line-height:1.25}.c2-lead{font-size:clamp(18px,1.7vw,22px);font-weight:700;letter-spacing:-.02em;line-height:1.5;color:var(--color-fg)}.c2-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:32px}.c2-head>div{display:grid;grid-gap:8px;gap:8px}.c2-head--center{flex-direction:column;align-items:center;text-align:center;margin-bottom:56px;gap:12px}.c2-head__lead{font-size:16px;font-weight:500;color:var(--color-text);max-width:48ch}.c2-header.is-clear{color:#fff;background:transparent}.c2-header.is-clear .logo,.c2-header.is-clear .site-nav{text-shadow:0 1px 12px rgba(0,0,0,.25)}.c2-header.is-solid{color:var(--color-fg);background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border)}.c2-header .site-nav__cta:hover{opacity:1}.c2-header.is-solid .site-nav__cta:hover{color:#fff;background:var(--color-fg)}.c2-header.is-clear .site-nav__cta:hover{color:#111;background:#fff;text-shadow:none}.c2-banner{position:relative;height:clamp(360px,58vh,620px);overflow:hidden;background:#111;color:#fff}.c2-banner__img{object-fit:cover;animation:c2-banner 1.4s var(--ease) both}@keyframes c2-banner{0%{transform:scale(1.08)}to{transform:scale(1)}}.c2-banner__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,.2) 45%,rgba(0,0,0,.6))}.c2-banner__content{position:absolute;left:0;right:0;bottom:56px;display:grid;grid-gap:10px;gap:10px}.c2-banner__crumb{font-size:13px;font-weight:600;letter-spacing:.04em;color:#e6e6e6;margin-bottom:8px}.c2-banner__crumb strong{color:#fff;letter-spacing:.08em}.c2-banner h1{font-size:clamp(48px,8vw,112px);font-weight:800;letter-spacing:-.05em;line-height:.95}.c2-banner p{font-size:clamp(17px,1.6vw,22px);font-weight:700}.c2-page-lead{text-align:center;font-size:clamp(18px,1.8vw,24px);font-weight:700;letter-spacing:-.02em;max-width:36em;margin:0 auto 56px}.c2-sub{font-size:clamp(22px,2.2vw,30px);font-weight:800;letter-spacing:-.03em;margin-bottom:28px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.c2-sub small{font-size:14px;font-weight:600;color:var(--color-sub);margin-left:8px}.c2-hero{position:relative;height:calc(100svh - var(--bar-h));min-height:560px;max-height:1100px;overflow:hidden;background:#111;color:#fff}.c2-hero__slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s var(--ease)}.c2-hero__slide img{object-fit:cover;transform:scale(1.06);transition:transform 7s linear}.c2-hero__slide.is-active{opacity:1}.c2-hero__slide.is-active img{transform:scale(1)}.c2-hero__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,0) 30%,rgba(0,0,0,0) 50%,rgba(0,0,0,.6))}.c2-hero__content{position:absolute;left:0;right:0;bottom:120px}.c2-hero__eyebrow{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:16px}.c2-hero__title{font-size:clamp(48px,8vw,120px);font-weight:800;letter-spacing:-.05em;line-height:.95}.c2-hero__sub{margin-top:20px;font-size:clamp(17px,1.6vw,22px);font-weight:600;letter-spacing:-.02em}.c2-hero__ui{position:absolute;left:0;right:0;bottom:36px;display:flex;align-items:center;gap:28px;font-size:12px;font-weight:600;letter-spacing:.12em}.c2-hero__count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700}.c2-hero__count i{font-style:normal;opacity:.75;font-weight:500}.c2-hero__dots{display:flex;gap:8px;flex:1 1;max-width:320px}.c2-hero__dots button{flex:1 1;height:16px;display:flex;align-items:center}.c2-hero__dots button span{display:block;width:100%;height:2px;background:rgba(255,255,255,.35);position:relative;overflow:hidden}.c2-hero__dots button.is-active span:after{content:"";position:absolute;inset:0;background:#fff;transform-origin:left;animation:c2-progress linear forwards;animation-duration:inherit;animation-play-state:inherit}@keyframes c2-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.c2-hero__scroll{margin-left:auto}.c2-intro{padding-block:calc(var(--section-gap) * .8) calc(var(--section-gap) * .45);text-align:center;display:grid;grid-gap:20px;gap:20px;justify-items:center}.c2-intro p{font-size:clamp(24px,2.8vw,38px);font-weight:800;line-height:1.45;letter-spacing:-.035em}.c2-intro p span{display:block;margin-top:12px;font-size:clamp(16px,1.4vw,19px);font-weight:500;color:var(--color-text);letter-spacing:-.01em}.c2-about{display:grid;grid-template-columns:1fr 1fr;background:var(--color-surface);margin-bottom:calc(var(--section-gap) / 2)}.c2-about__img .ph{height:100%;aspect-ratio:auto;min-height:600px}.c2-about__text{display:grid;grid-gap:22px;gap:22px;align-content:center;justify-items:start;padding:80px clamp(24px,6vw,120px)}.c2-about__text>p{font-size:16px;color:var(--color-text);line-height:1.85;max-width:46ch}.c2-about__strip{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--grid-gap);gap:var(--grid-gap);padding-bottom:calc(var(--section-gap) / 2)}.c2-about__strip>div:nth-child(2n){transform:translateY(40px)}.c2-stats{display:flex;gap:40px;margin:12px 0 0}.c2-stats div{display:grid;grid-gap:2px;gap:2px}.c2-stats dd{margin:0;font-size:34px;font-weight:800;letter-spacing:-.03em}.c2-stats dt{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-sub)}.c2-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px}.c2-card{position:relative;display:grid;grid-gap:8px;gap:8px;align-content:start;padding:40px 32px 32px;border:1px solid var(--color-border);transition:border-color var(--motion-normal) var(--ease)}.c2-card.is-featured,.c2-card:hover{border-color:var(--color-fg)}.c2-card.is-featured{background:var(--color-fg);color:var(--color-bg)}.c2-card__badge{position:absolute;top:18px;right:18px;font-size:11px;letter-spacing:.14em;border:1px solid;padding:3px 9px}.c2-card__badge,.c2-card__en{font-weight:700;text-transform:uppercase}.c2-card__en{font-size:12px;letter-spacing:.12em;color:var(--color-sub)}.c2-card h3{font-size:28px;font-weight:800;letter-spacing:-.03em}.c2-card__summary{font-size:15px;font-weight:500;color:var(--color-text)}.c2-card__price{font-size:32px;font-weight:800;letter-spacing:-.03em;margin:20px 0 6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.c2-card ul{display:grid;grid-gap:8px;gap:8px;padding:20px 0 28px;border-top:1px solid rgba(127,127,127,.3);font-size:15px;font-weight:500;color:var(--color-text)}.c2-card li:before{content:"✓";margin-right:10px;font-weight:700}.c2-card.is-featured .c2-card__en,.c2-card.is-featured .c2-card__summary,.c2-card.is-featured ul{color:#e2e2e2}.c2-card.is-featured .btn{background:#fff;color:#111;border-color:#fff}.c2-card.is-featured .btn:hover{background:transparent;color:#fff}.c2-card .btn{width:100%}.c2-product__note{margin-top:16px;text-align:right}.c2-steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:96px;border-top:2px solid var(--color-fg)}.c2-steps li{display:grid;grid-gap:8px;gap:8px;align-content:start;padding:28px 24px 0 0}.c2-steps li+li{padding-left:24px;border-left:1px solid var(--color-border)}.c2-steps span{font-size:12px;font-weight:700;color:var(--color-sub);letter-spacing:.12em}.c2-steps strong{font-size:19px;font-weight:800;letter-spacing:-.02em}.c2-steps p{font-size:15px;color:var(--color-text)}.c2-wedding{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;margin-block:calc(var(--section-gap) / 2)}.c2-wedding__mosaic{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--grid-gap);gap:var(--grid-gap)}.c2-wedding__ph--1,.c2-wedding__ph--3{transform:translateY(48px)}.c2-wedding__text{display:grid;grid-gap:20px;gap:20px;justify-items:start;padding:80px clamp(24px,6vw,120px)}.c2-wedding__text>p:not(.c2-lead){font-size:16px;color:var(--color-text);line-height:1.85;max-width:44ch}.c2-points{display:grid;grid-gap:8px;gap:8px;font-size:15px;font-weight:600}.c2-points li:before{content:"✓";margin-right:10px}.c2-ceremony{position:relative;color:#fff;overflow:hidden;margin-top:calc(var(--section-gap) / 2 + 48px)}.c2-ceremony__bg{position:absolute;inset:0}.c2-ceremony__bg .ph{height:100%;aspect-ratio:auto}.c2-ceremony__bg:after{content:"";position:absolute;inset:0;background:rgba(17,17,17,.7)}.c2-ceremony__inner{position:relative;padding-block:calc(var(--section-gap) * .9);display:grid;grid-gap:64px;gap:64px}.c2-ceremony__head{display:grid;grid-gap:16px;gap:16px;max-width:640px}.c2-ceremony__head .eyebrow{color:#e2e2e2}.c2-ceremony__head .c2-lead{color:#fff}.c2-ceremony__head p:not(.c2-lead){font-size:16px;line-height:1.85;color:#e6e6e6}.c2-timeline{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.5)}.c2-timeline li{display:grid;grid-gap:8px;gap:8px;align-content:start;padding:24px 24px 0 0}.c2-timeline li+li{padding-left:24px;border-left:1px solid rgba(255,255,255,.25)}.c2-timeline span{font-size:13px;font-weight:700;letter-spacing:.04em;color:#d6d6d6}.c2-timeline strong{font-size:20px;font-weight:800}.c2-timeline p{font-size:15px;color:#e6e6e6}.c2-ceremony__btn,.c2-contact__btn{justify-self:start;background:#fff;color:#111;border-color:#fff}.c2-ceremony__btn:hover,.c2-contact__btn:hover{background:transparent;color:#fff}.c2-affiliate{background:var(--color-surface)}.c2-affiliate .aff__item{background:var(--color-bg)}.c2-notice{max-width:1040px}.c2-filter{display:flex;flex-wrap:wrap;gap:6px 28px;margin-bottom:32px;border-bottom:1px solid var(--color-border)}.c2-filter button{position:relative;padding:12px 0;font-size:15px;font-weight:600;color:var(--color-sub);transition:color var(--motion-fast) var(--ease)}.c2-filter button sup{font-size:11px;margin-left:3px}.c2-filter button.is-active,.c2-filter button:hover{color:var(--color-fg)}.c2-filter button.is-active{font-weight:800}.c2-filter button.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--color-fg)}.c2-masonry{column-count:3;column-gap:var(--grid-gap)}.c2-item{page-break-inside:avoid;break-inside:avoid;margin-bottom:var(--grid-gap);position:relative;animation:c2-in .5s var(--ease) both}@keyframes c2-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.c2-item__cap{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;padding:48px 16px 14px;font-size:14px;font-weight:700;color:#fff;background:linear-gradient(0deg,rgba(0,0,0,.6),rgba(0,0,0,0));opacity:0;transition:opacity var(--motion-normal) ease-out;pointer-events:none}.c2-item__cap span:last-child{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.c2-item:focus-visible .c2-item__cap,.c2-item:hover .c2-item__cap{opacity:1}.c2-contact{position:relative;color:#fff;overflow:hidden;margin-top:calc(var(--section-gap) / 2)}.c2-contact--page{margin-top:0}.c2-contact:not(.c2-contact--page) .c2-contact__inner{grid-template-columns:1fr;text-align:center}.c2-contact:not(.c2-contact--page) .c2-contact__lead{justify-items:center}.c2-contact:not(.c2-contact--page) .c2-contact__btn{justify-self:center}.c2-contact__bg{position:absolute;inset:0}.c2-contact__bg .ph{height:100%;aspect-ratio:auto}.c2-contact__bg:after{content:"";position:absolute;inset:0;background:rgba(17,17,17,.68)}.c2-contact__inner{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-gap:64px;gap:64px;align-items:center;padding-block:calc(var(--section-gap) * .9)}.c2-contact__lead{display:grid;grid-gap:20px;gap:20px}.c2-contact__lead .eyebrow{color:#e2e2e2}.c2-contact__lead h2{font-size:clamp(34px,4.2vw,60px);font-weight:800;letter-spacing:-.045em;line-height:1.2}.c2-contact__lead p{color:#ececec;font-size:16px;font-weight:500}.c2-contact__lead .c2-contact__meta{font-size:14px;color:#d6d6d6}.c2-contact__form{background:var(--color-bg);color:var(--color-fg);padding:40px}@media (max-width:1024px){.c2-masonry{column-count:2}.c2-cards{max-width:520px;margin-inline:auto}.c2-cards,.c2-contact__inner{grid-template-columns:1fr}.c2-steps,.c2-timeline{grid-template-columns:repeat(2,1fr)}.c2-steps li:nth-child(3),.c2-timeline li:nth-child(3){padding-left:0;border-left:0}.c2-wedding{grid-template-columns:1fr}}@media (max-width:768px){.c2-hero__content{bottom:96px}.c2-hero__dots{max-width:160px}.c2-filter{flex-wrap:nowrap;overflow-x:auto;gap:22px;scrollbar-width:none}.c2-filter button{white-space:nowrap}.c2-item__cap{display:none}.c2-about{grid-template-columns:1fr}.c2-about__img .ph{min-height:0;aspect-ratio:4/5}.c2-about__text,.c2-wedding__text{padding:56px var(--page-gutter)}.c2-stats{gap:24px}.c2-steps,.c2-timeline{grid-template-columns:1fr}.c2-steps li,.c2-steps li+li,.c2-timeline li,.c2-timeline li+li{padding:20px 0;border-left:0;border-bottom:1px solid rgba(127,127,127,.3)}.c2-wedding__ph--1,.c2-wedding__ph--3{transform:translateY(24px)}.c2-contact__form{padding:24px 20px}.c2-about__strip{grid-template-columns:1fr 1fr}.c2-banner__content{bottom:32px}}