/* A full-viewport opening, with a separate reading area so the portrait stays unobstructed. */
.lm-home{min-width:0}.lm-rail{padding-inline:var(--gutter)}.lm-film{margin:0}.lm-stage{position:relative;overflow:hidden;background:var(--cream)}
.lm-opening{display:grid;grid-template-columns:52% 48%;min-height:max(580px,calc(100svh - var(--navigation-block-size)))}
.lm-hero-copy{min-width:0;padding:64px var(--gutter) 88px;display:flex;flex-direction:column;justify-content:center}
.lm-hero-eyebrow{margin-bottom:32px;flex-wrap:wrap;font-size:10px;letter-spacing:.1em}.lm-fine-line{width:22px;height:1px;background:currentColor}
.lm-hero-copy h1{font-size:clamp(58px,6.5vw,112px);line-height:1.05;letter-spacing:-.07em}.lm-hero-copy h1 em{display:block;margin-top:10px;line-height:1.01;letter-spacing:-.04em}
.lm-hero-description{max-width:37ch;color:var(--muted);margin-top:28px;font-size:15px;line-height:1.8}.lm-hero-actions{display:flex;align-items:center;gap:16px 24px;flex-wrap:wrap;margin-top:32px}
.lm-hero-art{position:relative;overflow:hidden;min-width:0;min-height:540px}.lm-beauty{height:100%;position:absolute;inset:0;object-position:65% center}.lm-beauty-shade{position:absolute;inset:0;background:linear-gradient(transparent 65%,#2f2b3660);pointer-events:none}
.lm-art-label{position:absolute;top:28px;left:28px;color:white;font-size:10px;letter-spacing:.12em}.lm-art-caption{position:absolute;bottom:32px;left:32px;right:32px;display:flex;justify-content:space-between;gap:20px;align-items:end;color:white}.lm-art-caption>span{font-size:26px;line-height:1.2;letter-spacing:-.04em}.lm-art-caption em{font:italic 38px/1 var(--serif)}.lm-art-caption svg{width:32px;height:32px}.lm-art-vertical{display:none}.lm-scroll-note{position:absolute;bottom:24px;left:var(--gutter);display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.1em;min-height:32px}.lm-scroll-note svg{width:14px;height:14px}
/* Photo-only interpolation: no JavaScript scroll listeners or hidden copy. */
@supports(animation-timeline:scroll()){@media(min-width:1000px) and (prefers-reduced-motion:no-preference){.lm-beauty{animation:maison-photo 1s both;animation-timeline:scroll(root block);animation-range:0 700px}@keyframes maison-photo{from{transform:scale(1.03)}to{transform:scale(1.09) translateY(1%)}}}}
.lm-choice{margin:20px;background:var(--peach);border-radius:var(--radius);padding:28px 36px;display:grid;grid-template-columns:1fr 1.5fr;gap:12px 6%;align-items:center}.lm-choice h2{font-size:30px;margin-top:8px}.lm-choice .lm-eyebrow{font-size:10px}.lm-quick-booking{display:flex;align-items:end;gap:16px;min-width:0}.lm-select-wrap{flex:1;position:relative;min-width:0}.lm-select-wrap select{background:#ffffffb3;border-color:transparent;padding-right:36px;appearance:none;min-height:52px;font-size:14px}.lm-select-wrap>svg{position:absolute;right:12px;bottom:16px;width:18px;height:18px;pointer-events:none}.lm-quick-booking .lm-button{background:var(--charcoal);border-color:var(--charcoal);color:white;flex-shrink:0}.lm-choice-help{grid-column:2;font-size:12px;color:var(--ink)}.lm-choice-help a{text-decoration:underline;text-underline-offset:3px}
.lm-expertises{padding-block:var(--space)}.lm-section-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.lm-section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:end;margin-bottom:40px}.lm-section-heading>p{max-width:38ch;justify-self:end;font-size:15px;color:var(--muted)}.lm-service-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:24px}.lm-service-card{min-width:0}.lm-service-photo{position:relative;overflow:hidden;border-radius:var(--radius);aspect-ratio:4/4.5;background:var(--cream)}.lm-service-photo img{height:100%;transition:transform .7s var(--ease)}.lm-service-card:hover img{transform:scale(1.035)}.lm-image-index{position:absolute;left:16px;top:16px;background:#fff9;padding:4px 10px;border-radius:5px;font-size:11px}.lm-card-arrow{position:absolute;bottom:16px;right:16px;display:grid;place-items:center;background:var(--cream);width:44px;height:44px;border-radius:50%}.lm-card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px}.lm-card-heading h3{font-size:clamp(21px,2vw,29px)}.lm-card-heading>span{display:none}.lm-service-card>p{font-size:14px;color:var(--muted);margin-top:12px;max-width:36ch}.lm-all-services{display:flex;justify-content:center;border-bottom:1px solid var(--line);margin-top:32px;padding-bottom:32px}.lm-guidance{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:13px;color:var(--muted);margin-top:20px}
.lm-maison-story{display:grid;grid-template-columns:1fr 1fr;background:var(--cream);margin:0 20px;border-radius:var(--radius);overflow:hidden}.lm-story-image{position:relative;min-height:540px}.lm-story-image img{position:absolute;inset:0;height:100%;object-position:50% 40%}.lm-image-annotation{position:absolute;bottom:24px;left:24px;background:var(--paper);padding:8px 12px;font-size:10px;border-radius:6px}.lm-story-copy{padding:clamp(32px,5vw,80px);display:flex;flex-direction:column;justify-content:center;align-items:start}.lm-story-copy h2{font-size:clamp(34px,3.6vw,56px);margin:28px 0}.lm-story-copy h2 em{display:block;margin-top:12px}.lm-story-copy>p:not(.lm-kicker){font-size:15px;color:var(--muted);margin-bottom:28px;max-width:44ch}
.lm-professionals{display:grid;grid-template-columns:1fr 1.3fr;gap:32px 8%;padding-block:var(--space)}.lm-team-intro h2{margin-top:24px}.lm-professionals>.lm-text-link{grid-column:2;justify-self:start}.lm-team-placeholder{display:flex;gap:24px;align-items:center;background:var(--soft);border-radius:var(--radius);padding:32px}.lm-team-monogram{font:italic 60px var(--serif)}.lm-team-placeholder h3{font-size:24px;letter-spacing:-.035em}.lm-team-placeholder p{font-size:14px;color:var(--muted);margin-top:12px}.lm-people{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:24px}.lm-person img{aspect-ratio:4/4.2;max-height:340px;object-position:50% 25%;border-radius:var(--radius)}.lm-person h3{margin:16px 0 8px}.lm-person>p{font-size:13px;color:var(--muted)}.lm-person>span{font-size:13px;display:flex;align-items:center;gap:16px;margin-top:16px;min-height:44px}.lm-initial{background:var(--cream);min-height:180px;display:grid;place-items:center;font-size:50px}
.lm-faq{display:grid;grid-template-columns:1fr 1.3fr;gap:8%;padding-block:0 var(--space)}.lm-faq h2{margin:24px 0}.lm-faq>div>p:not(.lm-kicker){font-size:14px;color:var(--muted);max-width:33ch}.lm-faq>div>.lm-text-link{margin-top:16px}.lm-answer p{font-size:14px}.lm-faq i{font-size:24px;font-style:normal;font-weight:400;transition:transform .2s var(--ease)}
.lm-visit{display:grid;grid-template-columns:1fr 1fr;background:var(--peach);border-radius:var(--radius);margin:0 20px 20px;overflow:hidden}.lm-visit-photo{position:relative;min-height:480px}.lm-visit-photo img{height:100%;position:absolute}.lm-location-tag{position:absolute;bottom:24px;left:24px;display:flex;align-items:center;gap:24px;background:var(--paper);border-radius:6px;padding:12px;font-size:10px}.lm-visit-copy{padding:clamp(32px,4vw,64px)}.lm-visit-copy h2{margin:24px 0;font-size:clamp(32px,3.4vw,52px)}.lm-visit-address{font-size:16px}.lm-visit-hours{margin-top:24px}.lm-visit-hours>p:last-child{font-size:13px;margin-top:8px}.lm-visit-actions{display:flex;flex-wrap:wrap;gap:16px 24px;margin-top:24px}.lm-visit-phone,.lm-instagram{display:block;font-size:13px;margin-top:16px;text-decoration:underline;text-underline-offset:5px;min-height:32px}.lm-instagram{font-size:12px}
@media(max-width:1100px){.lm-choice{grid-template-columns:1fr}.lm-choice-help{grid-column:auto}.lm-choice-intro{display:flex;align-items:center;justify-content:space-between;gap:24px}.lm-choice h2{margin:0}.lm-hero-copy h1{font-size:clamp(50px,6.4vw,76px)}.lm-hero-copy{padding:40px 32px 80px}.lm-scroll-note{left:32px;font-size:8px}.lm-hero-actions{gap:12px}.lm-service-grid{gap:20px}}
@media(max-width:760px){
.lm-opening{grid-template-columns:1fr;grid-template-rows:minmax(220px,1fr) auto;min-height:calc(100svh - var(--navigation-block-size))}
.lm-hero-copy{order:2;padding:24px max(24px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}
.lm-hero-eyebrow{margin-bottom:14px;font-size:8px;gap:10px;letter-spacing:.07em}.lm-fine-line{width:18px}
.lm-hero-copy h1{font-size:clamp(42px,11vw,58px);line-height:1.02;letter-spacing:-.06em}.lm-hero-copy h1 em{margin-top:2px;font-size:1.12em;line-height:.96}
.lm-hero-description{font-size:14px;line-height:1.6;margin-top:16px;max-width:40ch}
.lm-hero-actions{flex-direction:column;align-items:stretch;gap:2px;margin-top:20px}.lm-hero-actions .lm-button{min-height:48px;font-size:13px;padding-left:20px;gap:16px}.lm-hero-actions .lm-button-arrow{width:30px;height:30px}.lm-hero-actions .lm-text-link{justify-content:center;font-size:12px;min-height:44px}
.lm-hero-art{order:1;min-height:0;height:auto}.lm-beauty{object-position:68% 35%}.lm-beauty-shade,.lm-art-caption,.lm-art-label,.lm-scroll-note{display:none}
.lm-choice{margin:12px;padding:24px}.lm-choice-intro{display:block}.lm-choice h2{font-size:28px;margin-top:8px}.lm-quick-booking{flex-direction:column;align-items:stretch;gap:16px;margin-top:8px}.lm-select-wrap select{font-size:16px}.lm-choice-help{font-size:12px}.lm-section-top{gap:16px;align-items:start;flex-direction:column;margin-bottom:24px}.lm-section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:28px}.lm-section-heading>p{justify-self:start;max-width:44ch;font-size:14px}.lm-service-grid{display:flex;overflow-x:auto;gap:16px;scroll-snap-type:x proximity;padding-bottom:16px;overscroll-behavior-inline:contain}.lm-service-card{flex:0 0 82%;scroll-snap-align:start}.lm-service-photo{aspect-ratio:4/4.1}.lm-card-heading h3{font-size:25px}.lm-service-card>p{font-size:14px}.lm-all-services{margin-top:20px;padding-bottom:24px;justify-content:start}.lm-guidance{flex-direction:column;align-items:start;gap:0}.lm-maison-story{grid-template-columns:1fr;margin-inline:12px}.lm-story-image{min-height:340px}.lm-story-copy{padding:32px 24px}.lm-story-copy h2{font-size:36px;margin:20px 0}.lm-story-copy>p:not(.lm-kicker){font-size:14px}.lm-professionals{grid-template-columns:1fr;gap:24px}.lm-professionals>.lm-text-link{grid-column:auto}.lm-team-placeholder{padding:24px;gap:20px}.lm-team-placeholder h3{font-size:22px}.lm-team-monogram{font-size:48px}.lm-faq{grid-template-columns:1fr;gap:24px}.lm-faq h2{margin:20px 0}.lm-visit{grid-template-columns:1fr;margin-inline:12px}.lm-visit-photo{min-height:320px}.lm-visit-copy{padding:32px 24px}.lm-visit-copy h2{font-size:36px}.lm-visit-actions{flex-direction:column;align-items:start}.lm-eyebrow,.lm-kicker{font-size:10px;letter-spacing:.07em}}
@media(max-width:360px){.lm-hero-copy{padding-inline:20px}.lm-hero-copy h1{font-size:42px}.lm-hero-eyebrow{font-size:7px}.lm-choice{padding:24px 20px}.lm-choice h2{font-size:25px}.lm-quick-booking .lm-button{font-size:12px;gap:12px;padding-left:16px}}

/* Compact phones keep the message and both actions together. Larger text can grow naturally. */
@media(max-width:760px) and (max-height:700px){.lm-opening{grid-template-rows:minmax(180px,1fr) auto}.lm-hero-copy{padding-top:18px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.lm-hero-copy h1{font-size:40px}.lm-hero-eyebrow{margin-bottom:10px}.lm-hero-description{font-size:13px;margin-top:12px}.lm-hero-actions{margin-top:14px}}
