.main{padding-top:0}.wedding-shell{width:min(1180px,calc(100% - 2.5rem));margin:0 auto}.wedding-hero,.wedding-intro,.wedding-gallery-preview,.wedding-services,.wedding-approach,.wedding-faq,.wedding-quote,.wedding-cta{position:relative}.wedding-intro,.wedding-gallery-preview,.wedding-services,.wedding-approach,.wedding-faq,.wedding-quote{padding:5.5rem 0}.wedding-intro__text h2,.wedding-gallery-preview h2,.wedding-services h2,.wedding-approach h2,.wedding-faq h2,.wedding-cta h2{margin:0;font-family:Montserrat,sans-serif;font-size:25px;font-weight:700;line-height:1.08;letter-spacing:-.035em;color:var(--color-text-strong)}.wedding-intro__text>p,.wedding-service p,.wedding-approach__text p,.wedding-faq__item p,.wedding-cta__inner>div>p:not(.wedding-kicker){font-family:Montserrat,sans-serif;font-size:1rem;font-weight:400;line-height:1.9;color:var(--color-text-dim)}.wedding-404{display:flex;align-items:center;justify-content:center;min-height:70vh;padding:6rem 0;text-align:center}.wedding-404__inner{max-width:760px}.wedding-404 h1{margin:0}.wedding-404__text{max-width:560px;margin:1.25rem auto 0}.wedding-404__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.9rem;margin-top:2rem}.wedding-kicker{display:inline-flex;align-items:center;gap:.85rem;margin:0 0 1rem;font-family:Montserrat,sans-serif;font-size:.78rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--color-primary)!important}.wedding-kicker:before{content:"";display:block;width:42px;height:1px;background:var(--color-primary)!important;opacity:.95}.wedding-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 1.35rem;border:1px solid transparent;border-radius:2px;text-decoration:none;font-family:Montserrat,sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}.wedding-btn:hover{transform:translateY(-1px)}.wedding-btn--primary{color:#fff;background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 10px 24px var(--color-primary-shadow-soft)}.wedding-btn--primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.wedding-btn--ghost{color:var(--color-text-strong);background:#ffffffb8;border-color:var(--color-border)}.wedding-btn--ghost:hover{color:var(--color-primary);border-color:var(--color-primary)}.wedding-link{color:var(--color-primary);text-decoration:none;font-family:Montserrat,sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.wedding-link:hover{color:var(--color-primary-hover)}.wedding-hero{--wedding-header-overlap: 63px;position:relative;display:flex;align-items:center;justify-content:center;margin-top:calc(var(--wedding-header-overlap) * -1);min-height:93vh;overflow:hidden;text-align:center;background:#111;isolation:isolate}.wedding-hero__media,.wedding-hero__slides,.wedding-hero__slide,.wedding-hero__overlay{position:absolute;inset:0}.wedding-hero__media{z-index:0}.wedding-hero__image,.wedding-hero__slide{position:absolute;inset:0;width:100%;height:100%}.wedding-hero__image{object-fit:cover;object-position:center;transform:scale(1)}.wedding-hero__slides{z-index:0}.wedding-hero__slide{background-position:center;background-repeat:no-repeat;background-size:cover;opacity:0;transform:scale(1.04);transition:opacity 1.4s ease,transform 6s ease}.wedding-hero__slide.is-active{opacity:1;transform:scale(1)}.wedding-hero__overlay{z-index:1;background:linear-gradient(to bottom,#0a0a0a61,#0a0a0a7a 30%,#0a0a0a94)}.wedding-hero__inner{position:relative;z-index:2;width:min(100%,900px);padding:0 1.5rem 4rem}.wedding-hero__logo{display:block;width:92px;height:auto;margin:0 auto 1.5rem}.wedding-hero__eyebrow{margin:0 0 1rem;font-family:Montserrat,sans-serif;font-size:.78rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:#ffffffc7}.wedding-hero__title{margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(3rem,3.5vw,5.8rem);font-weight:500;line-height:.95;letter-spacing:-.02em;color:#fff;text-wrap:balance}.wedding-hero__intro{max-width:640px;margin:1.4rem auto 0;font-family:Montserrat,sans-serif;font-size:1rem;line-height:1.8;color:#ffffffe0}.wedding-hero__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.9rem;margin-top:2.2rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.wedding-hero__title{position:relative;margin:0;display:flex;flex-direction:column;align-items:center;font-family:Cormorant Garamond,serif;font-size:clamp(3.2rem,4.8vw,5.8rem);font-weight:500;line-height:.92;letter-spacing:-.02em;color:#fff;text-align:center;text-wrap:balance}.wedding-hero__title-line{display:block}.wedding-hero__title-line--rotating{display:flex;align-items:center;justify-content:center;min-height:1.08em;margin:.02em 0 .04em}.wedding-hero__word-viewport{position:relative;display:inline-flex;align-items:center;justify-content:center;height:1.05em;overflow:hidden;vertical-align:middle}.wedding-hero__word-track{position:relative;display:block;height:1em}.wedding-hero__word-track .word{position:absolute;top:50%;left:50%;white-space:nowrap;opacity:0;transform:translate(-50%,calc(-50% + .42em));transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1);will-change:transform,opacity}.wedding-hero__word-track .word.is-active{opacity:1;transform:translate(-50%,-50%)}.wedding-hero__word-track .word.is-leaving{opacity:0;transform:translate(-50%,calc(-50% - .38em))}.wedding-hero__intro{max-width:640px;margin:1.7rem auto 0;font-family:Montserrat,sans-serif;font-size:1rem;line-height:1.8;color:#ffffffe0}@media(max-width:900px){.wedding-hero__title{font-size:clamp(2.8rem,8vw,4.8rem);line-height:.95}.wedding-hero__title-line--rotating{min-height:1.1em}}@media(max-width:640px){.wedding-hero__title{font-size:clamp(2.3rem,10vw,3.7rem);line-height:.98}.wedding-hero__title-line--rotating{min-height:1.12em}.wedding-hero__inner{top:-30px}}@media(prefers-reduced-motion:reduce){.wedding-hero__word-viewport{width:auto!important;height:auto;overflow:visible}.wedding-hero__word-track{height:auto}.wedding-hero__word-track .word{position:static;display:none;opacity:1;transform:none;transition:none}.wedding-hero__word-track .word.is-active{display:inline}}.wedding-hero__logo,.wedding-hero__eyebrow,.wedding-hero__title,.wedding-hero__intro,.wedding-hero__actions{opacity:0;transform:translate3d(0,26px,0);will-change:opacity,transform}.wedding-hero.is-ready .wedding-hero__logo,.wedding-hero.is-ready .wedding-hero__eyebrow,.wedding-hero.is-ready .wedding-hero__title,.wedding-hero.is-ready .wedding-hero__intro,.wedding-hero.is-ready .wedding-hero__actions{animation:weddingHeroReveal 4s cubic-bezier(.22,1,.36,1) forwards}.wedding-hero.is-ready .wedding-hero__logo{animation-delay:.2s}.wedding-hero.is-ready .wedding-hero__eyebrow{animation-delay:.4s}.wedding-hero.is-ready .wedding-hero__title{animation-delay:.65s}.wedding-hero.is-ready .wedding-hero__intro{animation-delay:.95s}.wedding-hero.is-ready .wedding-hero__actions{animation-delay:1.2s}@keyframes weddingHeroReveal{0%{opacity:0;transform:translate3d(0,26px,0)}60%{opacity:1;transform:translateZ(0)}to{opacity:1;transform:translateZ(0)}}.wedding-hero__media{transform:scale(1.02);transition:transform 2.2s ease;will-change:transform}.wedding-hero.is-ready .wedding-hero__media{transform:scale(1)}.wedding-hero__overlay{opacity:0;transition:opacity 1.4s ease}.wedding-hero.is-ready .wedding-hero__overlay{opacity:1}.wedding-intro{overflow:hidden;background:var(--color-bg)}.wedding-intro__grid{display:grid;grid-template-columns:minmax(320px,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(2.5rem,5vw,5.5rem)}.wedding-intro__media{position:relative}.wedding-intro__portrait{position:relative;max-width:420px;margin:0;overflow:hidden;aspect-ratio:4 / 5;border:1px solid rgba(31,134,199,.14);border-radius:5px;background:#ece8e1;box-shadow:0 18px 45px #0000000d}.wedding-intro__portrait:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.35);pointer-events:none}.wedding-intro__portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}.wedding-intro__text{max-width:720px;text-align:justify}.wedding-intro__heading{margin-bottom:1.75rem}.wedding-intro__text>p{max-width:60ch;margin:0}.wedding-intro__text>p+p{margin-top:1.25rem}.wedding-gallery-preview{background:var(--color-bg-soft)}.wedding-gallery-preview__intro{padding-bottom:30px}.wedding-section-heading--inline{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.wedding-gallery-preview__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.wedding-story a{display:block;color:inherit;text-decoration:none}.wedding-story__media{overflow:hidden;aspect-ratio:4 / 5;border-radius:5px;background:var(--color-bg-alt)}.wedding-story__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.wedding-story:hover .wedding-story__media img{transform:scale(1.02)}.wedding-story__body{padding-top:.95rem}.wedding-story__meta{margin:0;font-family:Montserrat,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary)}.wedding-services{overflow:hidden;background:radial-gradient(circle at top right,var(--gradient-header-orb-2) 0%,transparent 34%),linear-gradient(180deg,var(--color-bg) 0%,var(--color-bg-soft) 100%)}.wedding-services:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,var(--color-overlay-light-015) 24%,transparent 100%)}.wedding-services .wedding-shell{position:relative;z-index:1}.wedding-services h2{text-align:left;text-wrap:balance}.wedding-services__intro{margin:1.2rem 0 0}.wedding-services__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;margin-top:2.4rem}.wedding-service{position:relative;display:flex;flex-direction:column;min-height:100%;padding:1.45rem;border:1px solid var(--color-border-card);border-radius:5px;background:linear-gradient(180deg,#ffffffb8,#fff9);box-shadow:inset 0 1px 0 var(--color-border-glass),0 10px 30px #00000006;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background-color .22s ease}.wedding-service:hover{transform:translateY(-3px);border-color:var(--color-border-strong);box-shadow:inset 0 1px 0 var(--color-border-glass),0 16px 40px #0000000d}.wedding-service__icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:1.15rem;border:1px solid var(--color-border-card);border-radius:4px;background:#ffffff9e;color:var(--color-primary);box-shadow:inset 0 1px 0 var(--color-border-glass);transition:transform .22s ease,border-color .22s ease,color .22s ease,box-shadow .22s ease,background-color .22s ease}.wedding-service:hover .wedding-service__icon{transform:translateY(-2px);border-color:#1586ad3d;color:var(--color-primary-hover);box-shadow:inset 0 1px 0 var(--color-border-glass),0 12px 26px #1586ad1a}.wedding-service__icon svg{width:35px;height:35px;stroke-linecap:round;stroke-linejoin:round}.wedding-service__content{display:flex;flex:1;flex-direction:column;min-width:0}.wedding-service__content h3{margin:0 0 .85rem;font-family:Montserrat,sans-serif;font-size:1.02rem;font-weight:600;line-height:1.35;letter-spacing:.01em;color:var(--color-text-strong)}.wedding-service__content p{margin:0;font-size:.98rem;line-height:1.82}.wedding-service__link{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.15rem;font-family:Montserrat,sans-serif;font-size:.76rem;font-weight:600;line-height:1;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--color-primary);transition:color .18s ease}.wedding-service__link:after{content:"→";transition:transform .18s ease}.wedding-service:hover .wedding-service__link{color:var(--color-primary-hover)}.wedding-service:hover .wedding-service__link:after{transform:translate(4px)}.wedding-service:focus-within{border-color:#1586ad3d;box-shadow:inset 0 1px 0 var(--color-border-glass),0 0 0 4px #11a8e214}.wedding-service__link:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px;border-radius:2px}.wedding-service-layout{position:relative;overflow:clip;padding:100px 0;background:radial-gradient(circle at top right,var(--gradient-header-orb-2) 0%,transparent 34%),linear-gradient(180deg,var(--color-bg) 0%,var(--color-bg-soft) 100%)}.wedding-service-layout:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,var(--color-overlay-light-015) 24%,transparent 100%)}.wedding-service-layout .wedding-shell{position:relative;z-index:1}.wedding-service-hero-block{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,500px);align-items:center;gap:3rem}.wedding-service-hero-block__content{max-width:640px}.wedding-service-hero-block h1{margin:.45rem 0 1rem;text-align:left;text-wrap:balance}.wedding-service-hero-block__intro{max-width:58ch;margin:0;font-size:1rem;line-height:1.9}.wedding-service-hero-block__actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.6rem}.wedding-service-hero-block__media{position:relative}.wedding-service-hero-block__media:before{content:"";position:absolute;top:-18px;left:-18px;width:116px;height:116px;background-image:radial-gradient(var(--color-primary) 1.15px,transparent 1.15px);background-size:12px 12px;opacity:.14;pointer-events:none}.wedding-service-hero-block__frame{position:relative;overflow:hidden;border:1px solid var(--color-border-card);border-radius:6px;background:var(--color-surface-dark);box-shadow:0 10px 22px var(--color-overlay-light-04)}.wedding-service-hero-block__frame img{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover}.wedding-service-layout .wedding-button,.wedding-service-layout .wedding-button--ghost,.wedding-service-layout--cta .wedding-button,.wedding-service-layout--cta .wedding-button--ghost{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.85rem 1.15rem;border-radius:4px;font-family:Montserrat,sans-serif;font-size:.76rem;font-weight:600;line-height:1;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,color .18s ease,background-color .18s ease}.wedding-service-layout .wedding-button,.wedding-service-layout--cta .wedding-button{border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 10px 20px #1586ad24}.wedding-service-layout .wedding-button:hover,.wedding-service-layout--cta .wedding-button:hover{transform:translateY(-2px);border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.wedding-service-layout .wedding-button--ghost,.wedding-service-layout--cta .wedding-button--ghost{border:1px solid var(--color-border-strong);background:var(--color-overlay-dark-58);color:var(--color-text-strong)}.wedding-service-layout .wedding-button--ghost:hover,.wedding-service-layout--cta .wedding-button--ghost:hover{transform:translateY(-2px);border-color:var(--color-primary);color:var(--color-primary)}.wedding-service-markers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:4.5rem}.wedding-service-marker{padding:1.45rem 1.35rem 1.25rem;border:1px solid var(--color-border-card);border-radius:5px;background:linear-gradient(180deg,var(--color-overlay-dark-82) 0%,var(--color-overlay-dark-58) 100%);box-shadow:inset 0 1px 0 var(--color-border-glass),0 8px 18px var(--color-overlay-light-03)}.wedding-service-marker__icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;margin-bottom:1rem;border:1px solid var(--color-border-card);border-radius:4px;background:var(--color-overlay-dark-92);color:var(--color-primary)}.wedding-service-marker__icon svg{width:21px;height:21px;stroke-linecap:round;stroke-linejoin:round}.wedding-service-marker h2{margin:0 0 .55rem;font-family:Montserrat,sans-serif;font-size:.98rem;font-weight:600;line-height:1.35;text-align:left;color:var(--color-text-strong)}.wedding-service-marker p{margin:0;font-size:.96rem;line-height:1.78}.wedding-service-marker:after{content:"";display:block;width:40px;height:1px;margin-top:1rem;background:var(--color-overlay-light-12)}.wedding-service-editorial{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr);align-items:center;gap:2.5rem;margin-top:5rem}.wedding-service-editorial__frame{position:relative;overflow:hidden;border:1px solid var(--color-border-card);border-radius:6px;background:var(--color-surface-dark);box-shadow:0 10px 22px var(--color-overlay-light-04)}.wedding-service-editorial__frame img{display:block;width:100%;aspect-ratio:4 / 4.6;object-fit:cover}.wedding-service-editorial__content{max-width:620px}.wedding-service-editorial__content h2{margin:.45rem 0 1rem;text-align:left;text-wrap:balance}.wedding-service-editorial__content p{margin:0 0 1rem}.wedding-service-editorial__tags{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.35rem}.wedding-service-editorial__tags span{display:inline-flex;align-items:center;min-height:34px;padding:.55rem .78rem;border:1px solid var(--color-border-card);border-radius:999px;background:var(--color-overlay-dark-58);font-family:Montserrat,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-strong)}.wedding-service-band{position:relative;padding:5.5rem 0}.wedding-service-band__heading{max-width:620px;margin-bottom:2rem}.wedding-service-band__heading h2{margin:.45rem 0 0;text-align:left;text-wrap:balance}.wedding-service-band--light{border-top:1px solid var(--color-border-soft);border-bottom:1px solid var(--color-border-soft);background:#fff}.wedding-service-band--light .wedding-shell{position:relative}.wedding-service-band--light .wedding-shell:after{content:"";position:absolute;top:-14px;right:0;width:110px;height:110px;background-image:radial-gradient(var(--color-primary) 1.1px,transparent 1.1px);background-size:12px 12px;opacity:.1;pointer-events:none}.wedding-service-band__columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.wedding-service-band__card{position:relative;padding-top:.15rem}.wedding-service-band__pictogram{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:1rem;border:1px solid var(--color-border-card);border-radius:4px;background:var(--color-bg);color:var(--color-primary)}.wedding-service-band__pictogram svg{width:20px;height:20px;stroke-linecap:round;stroke-linejoin:round}.wedding-service-band__card h3{margin:0 0 .55rem;font-family:Montserrat,sans-serif;font-size:.98rem;font-weight:600;line-height:1.35;color:var(--color-text-strong)}.wedding-service-band__card p{max-width:34ch;margin:0;line-height:1.8}.wedding-service-band--soft{border-top:1px solid var(--color-border-soft);background:linear-gradient(180deg,var(--color-bg-alt) 0%,var(--color-bg-soft) 100%)}.wedding-service-faq-list{max-width:860px}.wedding-service-faq-item{padding-bottom:.95rem;border-bottom:1px solid var(--color-border-card)}.wedding-service-faq-item+.wedding-service-faq-item{margin-top:1rem}.wedding-service-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none;font-family:Montserrat,sans-serif;font-size:.96rem;font-weight:600;color:var(--color-text-strong)}.wedding-service-faq-item summary::-webkit-details-marker{display:none}.wedding-service-faq-item__toggle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-border-card);border-radius:999px;background:var(--color-overlay-dark-82);color:var(--color-primary);transition:transform .18s ease,border-color .18s ease,background-color .18s ease}.wedding-service-faq-item__toggle svg{width:15px;height:15px;stroke-linecap:round;stroke-linejoin:round}.wedding-service-faq-item[open] .wedding-service-faq-item__toggle{transform:rotate(180deg);border-color:var(--color-overlay-light-24);background:var(--color-overlay-dark-92)}.wedding-service-faq-item p{max-width:72ch;margin:.85rem 0 0;padding-right:2.8rem}.wedding-service-layout--cta{background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-bg) 100%)}.wedding-service-cta-block{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.6rem;margin-top:4.5rem;padding-top:2rem;border-top:1px solid var(--color-border-card)}.wedding-service-cta-block__content{max-width:640px}.wedding-service-cta-block__content h2{margin:.45rem 0 .9rem;text-align:left;text-wrap:balance}.wedding-service-cta-block__content p:last-child{margin:0}.wedding-service-cta-block__actions{display:flex;flex-wrap:wrap;gap:.85rem}.wedding-approach{background:var(--color-bg)}.wedding-approach h2{max-width:35ch;text-align:left}.wedding-approach__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center;gap:clamp(2.5rem,5vw,5rem);margin-top:2.2rem}.wedding-approach__text p{text-align:justify;margin:0}.wedding-approach__text p+p{margin-top:1.25rem}.wedding-approach__highlight{padding-left:1rem;border-left:2px solid var(--color-primary);color:var(--color-text-strong)}.wedding-approach__media{position:relative;margin:0;overflow:hidden;aspect-ratio:4 / 5;border:1px solid rgba(31,134,199,.14);border-radius:5px;background:var(--color-bg-alt);box-shadow:0 18px 45px #0000000d}.wedding-approach__media:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.35);pointer-events:none}.wedding-approach__media img{display:block;width:100%;height:100%;object-fit:cover}.wedding-faq{padding:5.5rem 0 3.25rem;background:var(--color-bg-soft)}.wedding-faq h2{text-align:left}.wedding-faq__list{margin-top:2rem;border-top:1px solid var(--color-border)}.wedding-faq__item{border-bottom:1px solid var(--color-border)}.wedding-faq__item summary{position:relative;padding:1.4rem 2.5rem 1.4rem 0;cursor:pointer;list-style:none;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:600;line-height:1.5;color:var(--color-text-strong);transition:color .25s ease}.wedding-faq__item summary::-webkit-details-marker{display:none}.wedding-faq__item summary:hover{color:var(--color-primary)}.wedding-faq__item summary:after{content:"+";position:absolute;top:50%;right:0;transform:translateY(-50%) rotate(0);transform-origin:center;font-size:1.25rem;line-height:1;color:var(--color-primary);transition:transform .4s cubic-bezier(.22,1,.36,1)}.wedding-faq__item[open] summary:after{transform:translateY(-50%) rotate(45deg)}.wedding-faq__content{height:0;overflow:hidden;opacity:0;transition:height .45s cubic-bezier(.22,1,.36,1),opacity .3s ease;will-change:height,opacity}.wedding-faq__inner{padding:0 0 1.4rem}.wedding-faq__inner p{margin:0;font-size:.95rem;line-height:1.85;color:var(--color-text)}.wedding-service-faq-section .wedding-kicker{margin-bottom:.35rem}.wedding-service-faq-section .wedding-faq__list{margin-top:1.8rem}.wedding-quote{padding:6rem 0;text-align:center;background:linear-gradient(#fbf7f3d1,#fbf7f3d1),url(/images/wedding/hero_bg.webp) center center / cover no-repeat}.wedding-quote blockquote{max-width:980px;margin:0 auto;font-family:Alex Brush,cursive;font-size:clamp(2.4rem,5vw,4.8rem);font-weight:500;line-height:1.25;color:var(--color-text-strong)}.wedding-cta{padding:0 0 5.75rem;background:var(--color-bg-soft)}.wedding-cta__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;padding-top:2.75rem}.wedding-cta__actions{display:flex;align-items:center}.wedding-cta__inner>div>p:not(.wedding-kicker){max-width:62ch;margin:1rem 0 0}@media(prefers-reduced-motion:reduce){.wedding-btn,.wedding-hero__slide,.wedding-story__media img,.wedding-service,.wedding-service__icon,.wedding-service__link,.wedding-service__link:after,.wedding-faq__item summary:after{transition:none}.wedding-btn:hover,.wedding-service:hover,.wedding-service:hover .wedding-service__icon,.wedding-service:hover .wedding-service__link:after,.wedding-story:hover .wedding-story__media img{transform:none}}@media(min-width:768px){.wedding-hero__logo{width:60px;margin-bottom:24px}.logo img{width:30px}}@media(max-width:980px){.wedding-hero{--wedding-header-overlap: 88px}.wedding-intro__grid,.wedding-approach__grid,.wedding-cta__inner,.wedding-service-hero-block,.wedding-service-markers,.wedding-service-editorial,.wedding-service-band__columns,.wedding-service-cta-block{grid-template-columns:1fr}.wedding-intro__grid,.wedding-approach__grid{gap:2.5rem}.wedding-intro__media,.wedding-approach__media{order:-1}.wedding-intro__portrait,.wedding-approach__media{max-width:420px;margin:0 auto}.wedding-gallery-preview__grid,.wedding-services__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wedding-section-heading--inline{flex-direction:column;align-items:start}.wedding-service-hero-block__media{max-width:560px}}@media(max-width:720px){.wedding-shell{width:min(100% - 1.5rem,1180px)}.wedding-hero{--wedding-header-overlap: 76px;max-height:65vh;padding:7rem 1.25rem 5rem}.wedding-intro,.wedding-gallery-preview,.wedding-services,.wedding-approach,.wedding-faq,.wedding-quote{padding:4rem 0}.wedding-cta{padding:0 0 4rem}.wedding-hero__inner{padding:0rem 1.25rem 3rem}.wedding-hero__intro{font-size:.95rem;line-height:1.7;display:none}.wedding-hero__actions,.wedding-service-hero-block__actions,.wedding-service-cta-block__actions{flex-direction:column;align-items:stretch}.wedding-hero__actions .wedding-btn,.wedding-btn,.wedding-service-layout .wedding-button,.wedding-service-layout .wedding-button--ghost,.wedding-service-layout--cta .wedding-button,.wedding-service-layout--cta .wedding-button--ghost{width:100%}.wedding-intro__media,.wedding-approach__media{display:none}.wedding-gallery-preview__grid,.wedding-services__grid{grid-template-columns:1fr}.wedding-services__intro{margin-top:1rem;font-size:.96rem;line-height:1.82}.wedding-service{padding:1.25rem}.wedding-service__icon{width:44px;height:44px;margin-bottom:1rem}.wedding-service__icon svg{width:20px;height:20px}.wedding-service__content h3{margin-bottom:.7rem}.wedding-service__content p,.wedding-approach__text p,.wedding-faq__item p{font-size:.96rem;line-height:1.76}.wedding-faq__item summary{font-size:.92rem}.wedding-quote blockquote{font-size:clamp(2rem,10vw,3.2rem)}.wedding-service-band{padding:4rem 0}.wedding-service-markers,.wedding-service-editorial,.wedding-service-cta-block,.wedding-service-faq-section{margin-top:3.2rem}.wedding-service-faq-item p{padding-right:0}}@media(max-width:640px){.wedding-hero__logo{width:60px;margin-bottom:24px}.wedding-kicker{gap:.65rem;font-size:.72rem;letter-spacing:.18em}.wedding-kicker:before{width:32px}.wedding-intro__text h2,.wedding-gallery-preview h2,.wedding-services h2,.wedding-approach h2,.wedding-faq h2,.wedding-cta h2{line-height:1.12}.wedding-intro__text>p,.wedding-service p,.wedding-approach__text p,.wedding-faq__item p,.wedding-cta__inner>div>p:not(.wedding-kicker){font-size:.96rem;line-height:1.82}.wedding-intro__portrait{max-width:100%}}@media(max-width:520px){.wedding-hero__title{font-size:40px}}
