.couples-service{--session-space:clamp(64px,8vw,128px)}.couples-service p{font-size:1.0625rem;line-height:1.8;color:var(--muted)}.couples-service h2{font-size:clamp(2.6rem,4.5vw,5.4rem);font-weight:400;letter-spacing:-.045em;line-height:1.12}.couples-service h3{font-size:clamp(1.6rem,2.5vw,2.7rem);font-weight:400;letter-spacing:-.025em;line-height:1.18}.session-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:center;gap:6vw;padding:64px 0 100px}.session-hero-copy .eyebrow{font-size:.875rem;letter-spacing:.12em;line-height:1.7}.session-hero .display{font-size:clamp(4rem,7.2vw,8.1rem);letter-spacing:-.055em;margin:30px 0}.session-hero-copy .body-large{font-size:clamp(1.125rem,1.6vw,1.4rem);max-width:540px}.session-photo{margin:0;min-width:0}.session-photo img{width:100%;aspect-ratio:3/2;object-fit:cover}.session-hero-photo img{aspect-ratio:4/5;max-height:730px}.session-photo figcaption{font-size:.875rem;line-height:1.5;color:var(--muted);margin:12px 0 0}.session-actions{display:flex;gap:26px;flex-wrap:wrap;align-items:center;margin-top:34px}.session-button{display:inline-flex;justify-content:center;align-items:center;background:var(--accent);color:var(--ink);font-size:.9375rem;padding:17px 23px;min-height:52px;font-weight:500;border:1px solid var(--accent);transition:background .2s,color .2s}.session-button:hover{background:transparent;color:var(--accent)}.session-link{font-size:.9375rem;line-height:1.6;border-bottom:1px solid var(--line);padding:10px 0}.session-link:hover{color:var(--accent)}.session-section{padding:var(--session-space) 0;border-top:1px solid var(--line)}#atmospheres{scroll-margin-top:32px}.session-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:7vw;align-items:end;margin-bottom:70px}.session-heading>p{max-width:480px}.atmosphere-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:7vw;margin-top:80px}.atmosphere-row:nth-child(odd){grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.atmosphere-row:nth-child(odd) .session-photo{order:2}.atmosphere-copy p{margin-top:25px}.atmosphere-copy h3{margin-top:17px}.session-index{color:var(--accent);font-size:1rem;letter-spacing:.12em}.couples-service .session-support{font-size:.9375rem;line-height:1.8;color:var(--accent);margin-top:28px;max-width:450px}.cinematic img{filter:grayscale(1)}.atmosphere-note{margin:52px 0 0;max-width:640px;border-left:1px solid var(--accent);padding-left:25px}.session-occasions{background:var(--surface)}.occasion-list{display:grid;grid-template-columns:1fr 1fr;gap:38px 7vw}.occasion-list article{border-top:1px solid var(--line);padding-top:27px}.occasion-list h3{font-size:clamp(1.4rem,2vw,2rem)}.occasion-list p{margin-top:18px;max-width:530px}.session-comfort{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8vw;align-items:center}.session-comfort img{aspect-ratio:4/5}.session-comfort h2{font-size:clamp(2.6rem,4vw,4.7rem)}.session-comfort p{margin-top:30px;max-width:580px}.session-steps{list-style:none;padding:0;margin:55px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px}.session-steps li{border-top:1px solid var(--line);padding-top:25px}.session-steps h3{font-size:1.5rem;margin:22px 0 18px}.session-steps p{font-size:1rem}.session-story{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:7vw;align-items:center}.story-images{display:grid;grid-template-columns:1fr 1fr;gap:16px;min-width:0}.story-image{width:100%;object-fit:cover;aspect-ratio:4/5}.story-image-0{grid-column:1/-1;aspect-ratio:3/2}.story-images.single .story-image{aspect-ratio:4/5}.session-label{font-size:.875rem;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);line-height:1.6}.story-copy h3{margin:22px 0}.story-copy .concept-note{font-size:.9375rem;margin-top:18px;color:var(--accent)}.session-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8vw;align-items:start}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{font-size:1.0625rem;line-height:1.5;padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-mark{font-size:1.5rem;color:var(--accent);flex:none;transition:transform .2s}.faq-list details[open] .faq-mark{transform:rotate(45deg)}.faq-list details p{padding:0 42px 28px 0;font-size:1rem;max-width:670px}.session-final{text-align:center;background:var(--surface)}.session-final p{max-width:670px;margin:30px auto}.session-final .session-button{margin-top:8px}
@media(max-width:1050px){.session-hero{gap:4vw}.session-hero .display{font-size:clamp(3.4rem,7vw,5.6rem)}.session-steps{grid-template-columns:1fr 1fr;gap:35px}.session-faq{gap:5vw}.session-heading{gap:5vw}.atmosphere-row{gap:5vw}.session-actions{gap:20px}}
@media(max-width:700px){.session-hero{grid-template-columns:1fr;padding:48px 0 65px;gap:36px}.session-hero .display{font-size:clamp(3.15rem,13vw,5rem)}.session-hero-copy .eyebrow{font-size:.875rem;letter-spacing:.08em}.session-hero-photo img{aspect-ratio:4/5;max-height:560px}.session-heading,.session-comfort,.session-faq,.session-story{grid-template-columns:1fr;gap:32px}.session-heading{margin-bottom:42px}.atmosphere-row,.atmosphere-row:nth-child(odd){grid-template-columns:1fr;gap:26px;margin-top:48px}.atmosphere-row:nth-child(odd) .session-photo{order:0}.atmosphere-copy p{margin-top:20px}.atmosphere-row img{aspect-ratio:4/3}.occasion-list{grid-template-columns:1fr;gap:30px}.session-comfort img{aspect-ratio:4/3}.session-comfort p{margin-top:24px}.session-steps{grid-template-columns:1fr;gap:32px;margin-top:38px}.session-steps h3{margin:14px 0}.session-story{gap:30px}.story-images.single .story-image{aspect-ratio:4/3}.session-faq{gap:38px}.faq-list summary{padding:23px 0}.session-actions{align-items:flex-start;gap:18px 25px}.session-button{width:100%}.session-final .session-button{width:auto;max-width:100%}.couples-service h2{font-size:clamp(2.25rem,9vw,3.5rem)}.couples-service .session-support{font-size:.9375rem}.session-photo figcaption{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.couples-service .reveal{opacity:1!important;transform:none!important;transition:none!important}.couples-service *, .couples-service *::before,.couples-service *::after{animation:none!important;transition:none!important}}
