/* La Maison / Signature 28. Ivory headings and controls on the exact client accent #AE7774.
   Administration, content, booking integrations and owner media remain independent. */
body.lm-site{
 --paper:#faf9f6;--cream:#efede8;--surface:#efede8;--soft:#f4f2ee;--rose:#f4f2ee;
 --ink:#292725;--charcoal:#292725;--muted:#69645e;--line:#2927251c;--peach:#ae7774;--accent:#ae7774;--on-accent:#271b18;
 --serif:'Newsreader',Georgia,serif;--lm-serif:var(--serif);--lm-paper:var(--paper);--lm-ink:var(--ink);--lm-rose:var(--accent);
 --gutter:clamp(24px,5vw,88px);--space:clamp(72px,8vw,120px);
 color:var(--ink);background-color:var(--paper);font-weight:400;
}
body.lm-site::before{opacity:.035}
.lm-site :is(h1,h2,h3){font-weight:500;letter-spacing:-.045em;line-height:1.12}
.lm-site :is(h1,h2,h3) em{font-family:var(--serif);font-weight:500;letter-spacing:-.035em;line-height:1.06;font-size:1.08em}
.lm-site h1{font-size:clamp(44px,5.2vw,78px)}
.lm-site h2{font-size:clamp(32px,3.4vw,52px)}
.lm-site h3{font-size:clamp(23px,2.1vw,30px)}
.lm-site :is(.eyebrow,.section-label,.lm-eyebrow,.lm-kicker,.lmx-kicker,.team06-kicker,.contact07-eyebrow){font-weight:600;font-size:10px;letter-spacing:.13em;line-height:1.6}
.lm-site :is(.lm-kicker,.section-label)>span:first-child{color:#8c5e59}
.lm-site .wrap{max-width:1440px}
.lm-site .site-header{max-width:1380px;width:calc(100% - 48px);border-radius:18px;border:1px solid #fff9;background:#faf9f6e8;box-shadow:0 8px 32px #29272507;top:16px;margin-top:16px}
.lm-site .site-header::before{border:0;background:transparent;box-shadow:none;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.lm-site .header-inner{height:76px;padding-inline:26px;gap:20px}
.lm-site .site-header .wordmark{width:165px}
.lm-site .site-header .desktop-nav{gap:26px;margin-right:12px}
.lm-site .site-header .desktop-nav a{font-size:12px;font-weight:500}
.lm-site .desktop-nav a::after{height:2px;background:var(--accent);bottom:2px}
.lm-site .site-header .header-cta{border-radius:50px;background:var(--ink);color:var(--paper);border-color:var(--ink);padding:5px 6px 5px 19px;gap:18px;min-height:44px;font-size:12px;box-shadow:none}
.lm-site .site-header .header-cta .button-icon{width:31px;height:31px;border-radius:50%;background:#ffffff13}
.lm-site .menu-toggle{color:var(--ink)}
.lm-site .site-menu{background:var(--paper);background-image:none}
.lm-site .site-menu nav a>span{font-weight:500}
.lm-site .site-menu nav a[aria-current] small{color:#8c5e59}
.lm-site :is(.button,.lm-button,.lm-about-btn,.lmx-button,.team06-button,.contact07-button,.contact07-submit,.arch-primary){font-weight:600;letter-spacing:0;min-height:52px;background:var(--ink);border-color:var(--ink);color:var(--paper);box-shadow:none}
.lm-site :is(.button,.lm-button,.lm-about-btn,.lmx-button,.team06-button,.contact07-button,.contact07-submit,.arch-primary):hover{background:#45413d;border-color:#45413d;color:var(--paper)}
.lm-site :is(.lm-button-outline,.lm-about-btn-outline,.lmx-button--outline){background:transparent;border-color:#2927253b;color:var(--ink)}
.lm-site :is(.lm-button-outline,.lm-about-btn-outline,.lmx-button--outline):hover{background:var(--cream);color:var(--ink);border-color:#2927253b}
.lm-site :is(.lm-button-outline,.lm-about-btn-outline,.lmx-button--outline) :is(.lm-button-arrow,.lm-about-btn-icon,.lmx-button-icon){background:#29272508}
.lm-site :is(.lm-button-light,.contact07-button-light,.team06-button-light){background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.lm-site :is(.button-icon,.lm-button-arrow,.lm-about-btn-icon,.lmx-button-icon,.team06-button-icon,.contact07-button-icon,.contact07-submit-icon){background:#ffffff14}
.lm-site :is(input,textarea,select){background:#fff;border-color:#29272526;border-radius:10px;font-size:16px;min-height:50px}
.lm-site :is(input,textarea,select):focus{border-color:var(--accent);outline-color:var(--accent)}
.lm-site :is(.page-intro,.service-cover,.lmx-hero,.team06-hero,.contact07-hero){padding-top:64px}
.lm-site .page-intro h1{margin:20px 0}
.lm-site :is(.lmx-hero,.contact07-hero,.service-cover){max-width:1440px;margin-inline:auto;gap:6%;padding-bottom:72px;background:transparent}
.lm-site :is(.lmx-hero h1,.contact07-hero h1,.team06-hero h1){font-size:clamp(44px,5.2vw,76px);line-height:1.08}
.lm-site :is(.lmx-hero-summary,.contact07-hero-description){font-size:16px;line-height:1.8;max-width:40ch}
.lm-site :is(.lmx-visual-primary,.contact07-hero-visual,.service-cover-image){border-radius:20px;overflow:hidden;padding:6px;background:#fff;box-shadow:0 16px 48px #29272506}
.lm-site :is(.lmx-visual-primary>img,.contact07-hero-img,.service-cover-image>img){border-radius:15px;object-fit:cover}
.lm-site .lmx-visual-caption{background:#fff;padding:16px 20px;color:var(--ink)}
.lm-site .lmx-visual-stamp{background:transparent;padding:0;color:var(--ink);border-radius:0}
.lm-site .lmx-visual-stamp b{font-size:32px;color:#8c5e59}
.lm-site .lmx-visual-stamp small{font-size:9px}
.lm-site .lmx-hero-foot{font-size:9px;letter-spacing:.05em;color:var(--muted)}
.lm-site :is(.lmx-collection,.lmx-details,.team06-roster){padding-block:72px}
.lm-site :is(.lmx-filters,.team06-filters){gap:8px}
.lm-site :is(.lmx-filter,.team06-filters button){min-height:44px;background:transparent;border:1px solid #29272526;color:var(--ink);font-size:12px;padding:10px 18px;border-radius:50px}
.lm-site :is(.lmx-filter.is-selected,.team06-filters button[aria-pressed=true]){background:var(--ink);border-color:var(--ink);color:var(--paper)}
.lm-site :is(.lmx-card-image,.team06-card-photo){border-radius:16px;overflow:hidden}
.lm-site .lmx-card-image{aspect-ratio:1.05}
.lm-site .lmx-card-copy{padding-top:20px}
.lm-site .lmx-card-category{font-size:9px;letter-spacing:.1em;color:var(--muted)}
.lm-site .lmx-card-copy h3{font-size:28px;line-height:1.14;margin-block:10px 12px}
.lm-site .lmx-card-desc{font-size:14px;line-height:1.75}
.lm-site .lmx-card-actions{gap:8px 18px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:10px;margin-top:16px}
.lm-site .lmx-card-actions a{font-size:12px}
.lm-site .lmx-note{background:var(--accent);border:1px solid #2927250d;border-radius:20px;box-shadow:0 18px 54px #29272504;max-width:1280px;width:calc(100% - 2*var(--gutter));margin:0 auto 40px;grid-template-columns:.7fr 1.3fr;overflow:hidden}
.lm-site .lmx-note-body{padding:48px}
.lm-site .lmx-note-body h2{font-size:40px}
.lm-site .lmx-note-photo img{object-position:50% 60%}
.lm-site .lmx-note-art{display:none}
.lm-site .salon-bubble-photo{border:3px solid var(--paper);box-shadow:0 0 0 1px #29272515;background:var(--cream)}
.lm-site .salon-bubbles{gap:12px}.lm-site .salon-bubbles a{font-size:11px}
/* Treatment pages: readable chapters, photographed apparatus, no coloured slabs. */
.lm-site .service-cover-copy h1{font-size:clamp(42px,5vw,74px)}
.lm-site .service-cover-copy h1 em{font-size:.8em;margin-top:10px}
.lm-site .service-cover-copy>p:not(.eyebrow){font-size:16px;line-height:1.8}
.lm-site .service-cover-image>span{background:#faf9f6eb;border-radius:50px;font-size:9px;letter-spacing:.1em;padding:10px 14px}
.lm-site .experience-page-nav{gap:24px;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;scrollbar-width:thin;padding-block:10px}
.lm-site .experience-page-nav a{font-size:12px;flex:none}
.lm-site :is(.experience-service-body,.devices22,.editorial22,.prices22,.results22,.experience-team,.service-faq){padding-block:72px}
.lm-site .experience-offerings li{background:none}
.lm-site .device22-visual{background:#f2f1ed;border:6px solid #fff;border-radius:20px;box-shadow:0 10px 40px #29272505}
.lm-site .device22-visual img{filter:none}
.lm-site .device22-number{color:#8c5e59}
.lm-site .device22-copy h3{font-size:40px}
.lm-site .editorial22-sections h3{font-size:20px;font-weight:500;letter-spacing:-.025em}
.lm-site .experience-person{background:#fff;border-color:#29272512;border-radius:16px}
.lm-site .experience-portrait{border:4px solid #f4f2ef;box-shadow:0 0 0 1px #29272512}
.lm-site .experience-person-head h3{font-size:25px}
.lm-site :is(.salon-guidance-panel,.profile-booking,.booking-empty){background:#fff;border:1px solid #29272512;border-radius:20px}
.lm-site .salon-recommendations{gap:24px}
/* Booking: a compact introduction and consistent, scannable rows. */
.lm-site .experience-booking-intro{padding-block:56px 32px;max-width:1160px}
.lm-site .experience-booking-intro h1{font-size:clamp(36px,4vw,56px)}
.lm-site .experience-booking-intro h1 em{display:inline;margin-left:.18em}
.lm-site .experience-booking-intro .page-description{font-size:15px;max-width:65ch}
.lm-site .experience-steps{margin-top:26px;gap:30px;font-size:12px}
.lm-site .experience-steps .is-current span{background:var(--accent);color:#171412;border-color:var(--accent)}
.lm-site .booking-page{max-width:1160px;padding-bottom:72px}
.lm-site .booking-filters{margin-bottom:28px;scroll-margin-top:120px}
.lm-site .booking-cards{gap:12px}
.lm-site .booking-card{padding:24px;background:#fff;border:1px solid #29272512;border-radius:16px;box-shadow:none;gap:24px}
.lm-site .booking-photo{width:120px;height:120px;border:0;border-radius:50%;overflow:hidden;background:transparent;box-shadow:none;flex-shrink:0}
.lm-site .booking-details h2{font-size:26px;margin-block:6px}
.lm-site .booking-details .eyebrow{font-size:9px;letter-spacing:.05em;max-width:45ch}
.lm-site .booking-details .subtle-link{font-size:12px}
.lm-site .booking-actions .button{font-size:12px;min-height:48px}
.lm-site .booking-actions small{font-size:11px;max-width:40ch}
/* Contact: the client accent frames a clear, light form. */
.lm-site .contact07-hero-visual-overlay{background:#fff;color:var(--ink);padding:16px 20px;position:static}
.lm-site .contact07-hero-visual-overlay>span:first-child{font-size:19px;line-height:1.2}
.lm-site .contact07-hero-image-number{font-size:28px;color:#8c5e59}
.lm-site .contact07-shortcuts{gap:16px;margin-bottom:56px}
.lm-site .contact07-shortcuts>a{background:#fff;border:1px solid #29272512;border-radius:12px;padding:20px}
.lm-site .contact07-shortcut-icon{background:var(--accent);color:var(--on-accent)}
.lm-site .contact07-place{background:transparent;border-block:1px solid var(--line);padding-block:64px}
.lm-site .contact07-map-section{padding-block:64px}
.lm-site .contact07-map-placeholder{border-radius:18px;overflow:hidden}
.lm-site .contact07-connect{background:var(--cream);padding-block:80px;gap:7%;align-items:start}
.lm-site .contact07-connect-right{border:6px solid #fff;border-radius:22px;background:var(--accent);box-shadow:0 24px 64px #29272505;padding:32px}
.lm-site .contact07-connect-left h2{font-size:48px;line-height:1.12}
.lm-site .contact07-form-head h2{font-size:30px}
.lm-site .contact07-connect-cards a strong{font-weight:500;overflow-wrap:anywhere}
.lm-site .contact07-form input,.lm-site .contact07-form select,.lm-site .contact07-form textarea{background:#faf9f6;border-color:#29272520;border-radius:8px}
.lm-site .contact07-status{background:#f4f2ee;font-size:12px;line-height:1.7}
.lm-site .contact07-form label{font-size:12px}
.lm-site .contact07-submit{background:var(--ink);color:var(--paper);border-color:var(--ink);font-size:13px}
.lm-site .contact07-form label>span:first-child{color:var(--on-accent)}
/* Restore the original accent panels across About, careers and booking. */
.lm-site :is(.arch-hero,.lm-about-history,.lm-about-values,.salon-careers-values){background:transparent}
.lm-site .arch-title{font-weight:500}.lm-site .arch-photo-frame{border-radius:18px;box-shadow:none}
.lm-site .salon-application-panel{background:var(--accent)}
.lm-site .salon-recruit{background:var(--accent);border:0;border-radius:20px}
.lm-site .booking-finale{background:var(--accent);border-block:1px solid var(--line);border-radius:0;margin:0;padding:64px 0}
.lm-site .booking-finale .wrap{max-width:1280px}
.lm-site .booking-finale h2{font-size:48px}
.lm-site .booking-finale .round-cta{color:var(--ink);font-size:13px}
.lm-site .round-cta>svg{background:var(--accent);border:0;color:#171412}
.lm-site .booking-finale p:last-child{font-size:14px;line-height:1.75}
/* Opaque client swatch, with darker text for readable contrast. */
.lm-site :is(.m24-choice,.salon-recruit,.m24-visit,.lmx-note,.lm-about-visit,.salon-application-panel,.contact07-connect-right,.booking-finale){--ink:var(--on-accent);--charcoal:var(--on-accent);--muted:var(--on-accent);color:var(--on-accent)}
.lm-site :is(.m24-choice,.salon-recruit,.m24-visit,.lmx-note,.lm-about-visit,.salon-application-panel,.contact07-connect-right,.booking-finale) :is(.lm-kicker,.section-label)>span:first-child{color:var(--on-accent)}
.lm-site .booking-finale .round-cta>svg{background:var(--paper);color:var(--on-accent)}
.lm-site :is(.m24-hero-actions>.button,.lm-button-light,.contact07-button-light,.team06-button-light),
.lm-site :is(.m24-hero-actions>.button,.lm-button-light,.contact07-button-light,.team06-button-light):hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.lm-site :is(.m24-hero-actions>.button,.lm-button-light,.contact07-button-light,.team06-button-light) :is(.button-icon,.lm-button-arrow,.team06-button-icon,.contact07-button-icon){background:#17141212}
/* Ivory for large headings; warm brown preserves small-text contrast on rose. */
.lm-site :is(.m24-choice,.salon-recruit,.m24-visit,.lmx-note,.lm-about-visit,.salon-application-panel,.contact07-connect-right,.booking-finale) :is(h2,h3){color:var(--paper)}
.lm-site :is(.m24-choice,.salon-recruit,.m24-visit,.lmx-note,.lm-about-visit,.salon-application-panel,.contact07-connect-right,.booking-finale) :is(.button,.lm-button,.lm-about-btn,.lmx-button,.team06-button,.contact07-button,.contact07-submit,.arch-primary){background:var(--paper);border-color:var(--paper);color:var(--on-accent)}
.lm-site :is(.m24-choice,.salon-recruit,.m24-visit,.lmx-note,.lm-about-visit,.salon-application-panel,.contact07-connect-right,.booking-finale) :is(.button,.lm-button,.lm-about-btn,.lmx-button,.team06-button,.contact07-button,.contact07-submit,.arch-primary):hover{background:#fff;border-color:#fff;color:var(--on-accent)}
.lm-site :is(.m24-choice,.salon-recruit,.m24-visit,.lmx-note,.lm-about-visit,.salon-application-panel,.contact07-connect-right,.booking-finale) :is(.button,.lm-button,.lm-about-btn,.lmx-button,.team06-button,.contact07-button,.contact07-submit,.arch-primary) :is(.button-icon,.lm-button-arrow,.lm-about-btn-icon,.lmx-button-icon,.team06-button-icon,.contact07-button-icon,.contact07-submit-icon){background:#271b1810;color:var(--on-accent)}
/* A clear end to the visit. One logo, grouped links, dark neutral rather than beige. */
.lm-site .site-footer{background:#292725;color:#f6f3ed;border:0;padding:64px 0 26px}
.lm-site .footer-grid{max-width:1440px;grid-template-columns:1.2fr 1fr 1.2fr .9fr;gap:40px;padding-bottom:48px}
.lm-site .site-footer .footer-logo{width:220px}
.lm-site .site-footer .brand-signature{filter:invert(1);mix-blend-mode:screen}
.lm-site .footer-grid h3{font:600 10px/1.5 var(--sans);letter-spacing:.12em;color:#c7beb6;margin-bottom:20px}
.lm-site .footer-grid>div>p{font-size:13px;line-height:1.75;color:#c7beb6;max-width:30ch;margin-top:20px}
.lm-site .footer-grid a:not(.wordmark){font-size:13px;line-height:1.7;min-height:36px;color:#f6f3ed}
.lm-site .footer-grid a[href^="mailto"]{overflow-wrap:anywhere}
.lm-site .footer-socials{gap:12px;flex-wrap:wrap}
.lm-site .footer-bottom{border-top:1px solid #ffffff20;padding-top:24px;gap:24px;font-size:10px;color:#c7beb6;max-width:1440px}
.lm-site .footer-bottom>div{gap:16px;flex-wrap:wrap}
.lm-site .footer-bottom a{font-size:10px;min-height:36px;display:inline-flex;align-items:center}
.lm-site .preview-note{color:#c7beb6;font-size:10px;margin-top:18px}
.lm-site .site-footer a:focus-visible{outline-color:#f6f3ed}
.lm-site .promo22-bar{display:flex;align-items:center;gap:24px;margin:24px var(--gutter) 0;padding:22px 28px;background:#fff;color:var(--ink);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:14px}
.lm-site .promo22-bar>.promo24-image{width:72px;height:72px;object-fit:contain;border-radius:8px;flex:none}
.lm-site .promo24-banner-copy{flex:1;min-width:0}.lm-site .promo24-banner-copy strong{font-size:17px;font-weight:600}
.lm-site .promo24-banner-copy p{font-size:13px;line-height:1.65;margin-top:6px;white-space:pre-line;overflow-wrap:anywhere}
.lm-site .promo24-banner-copy small{display:block;font-size:11px;margin-top:8px;color:var(--muted)}
.lm-site .promo22-bar .button{flex:none}.lm-site .promo22-bar button{color:var(--ink);white-space:nowrap}
.lm-site .promo22-dialog{background:var(--paper);border:6px solid #fff;border-radius:22px;padding:0;width:min(500px,calc(100% - 28px));max-height:90dvh;overflow:hidden;color:var(--ink)}
.lm-site .promo22-dialog::backdrop{background:#29272580;backdrop-filter:blur(4px)}
.lm-site .promo24-scroll{max-height:calc(90dvh - 12px);overflow:auto;overscroll-behavior:contain}
.lm-site .promo24-scroll>.promo24-image{display:block;width:100%;max-height:32dvh;object-fit:contain;background:#efede8;border-radius:15px 15px 0 0}
.lm-site .promo24-copy{padding:38px 30px 30px}.lm-site .promo24-has-image .promo24-copy{padding-top:24px}
.lm-site .promo22-dialog .promo22-close{position:absolute;right:8px;top:8px;z-index:2;display:grid;place-items:center;width:44px;height:44px;border:1px solid #29272515;border-radius:50%;background:#faf9f6;color:var(--ink);font-size:26px;line-height:1}
.lm-site .promo22-dialog h2{font-size:34px;line-height:1.13;margin:18px 0;overflow-wrap:anywhere}
.lm-site .promo24-body p{font-size:14px;line-height:1.8;margin-bottom:14px;white-space:pre-line;overflow-wrap:anywhere}
.lm-site .promo22-dialog .promo22-conditions{font-size:11px;line-height:1.6;margin:18px 0;color:var(--muted)}
.lm-site .promo24-cta{margin-top:20px;gap:16px}.lm-site .promo24-cta>span:first-child{overflow-wrap:anywhere;min-width:0}
@media(prefers-reduced-motion:no-preference){.promo22-dialog[open]{animation:promo24-arrive .35s cubic-bezier(.2,.7,.2,1)}@keyframes promo24-arrive{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}}
@media(max-width:760px){.lm-site .promo22-bar{flex-wrap:wrap;padding:20px;gap:16px}.lm-site .promo22-bar>.promo24-image{width:52px;height:52px}.lm-site .promo24-banner-copy{flex-basis:calc(100% - 70px)}.lm-site .promo22-bar>.button{width:100%}.lm-site .promo22-bar>button{padding:0}.lm-site .promo24-copy{padding:38px 22px 24px}.lm-site .promo22-dialog h2{font-size:30px}}
.lm-site .mobile-booking{background:#292725f5;color:#fff;border:1px solid #ffffff25;box-shadow:0 4px 20px #29272512}
.lm-site .mobile-booking strong{color:inherit}
@media(min-width:1500px){.lm-site :is(.lmx-collection,.lmx-details,.contact07-shortcuts,.contact07-place,.contact07-map-section){max-width:1440px;margin-inline:auto}}
@media(max-width:1100px){.lm-site .site-header .desktop-nav{gap:16px}.lm-site .header-inner{padding-inline:18px;gap:14px}.lm-site .footer-grid{gap:24px;grid-template-columns:1fr 1fr}}
@media(max-width:760px){
 body.lm-site{--gutter:22px;--space:64px}
 .lm-site h1{font-size:42px}.lm-site h2{font-size:34px}.lm-site h3{font-size:25px}
 .lm-site .site-header{top:8px;margin-top:8px;width:calc(100% - 24px);border-radius:16px}
 .lm-site .header-inner{height:64px;padding-inline:14px;gap:8px}
 .lm-site .site-header .wordmark{width:128px}
 .lm-site .site-header .header-cta{min-height:40px;padding:4px 5px 4px 13px;font-size:11px;gap:10px}
 .lm-site .site-header .header-cta .button-icon{width:27px;height:27px}
 .lm-site .header-actions{gap:2px}
 .lm-site :is(.page-intro,.service-cover,.lmx-hero,.team06-hero,.contact07-hero){padding-top:36px}
 .lm-site :is(.lmx-hero,.contact07-hero,.service-cover){padding-bottom:40px;gap:28px}
 .lm-site :is(.lmx-hero h1,.contact07-hero h1,.team06-hero h1){font-size:42px;line-height:1.08}
 .lm-site :is(.lmx-hero-summary,.contact07-hero-description){font-size:15px;line-height:1.7}
 .lm-site :is(.lmx-visual-primary,.contact07-hero-visual,.service-cover-image){border-radius:16px;padding:5px}
 .lm-site :is(.lmx-visual-primary>img,.contact07-hero-img,.service-cover-image>img){border-radius:11px}
 .lm-site :is(.lmx-collection,.lmx-details,.team06-roster){padding-block:48px}
 .lm-site :is(.lmx-filters,.team06-filters){flex-wrap:nowrap;overflow-x:auto;max-width:100%;white-space:nowrap;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:#29272530 transparent}
 .lm-site :is(.lmx-filter,.team06-filters button){flex:none;font-size:12px;padding:10px 16px}
 .lm-site .lmx-card-copy h3{font-size:27px}
 .lm-site .lmx-grid{row-gap:36px}
 .lm-site .lmx-note{grid-template-columns:1fr;width:calc(100% - 44px);margin-bottom:12px}
 .lm-site .lmx-note-photo{min-height:0;height:180px}.lm-site .lmx-note-photo img{height:100%;width:100%;object-fit:cover}
 .lm-site .lmx-note-body{padding:26px}.lm-site .lmx-note-body h2{font-size:32px}
 .lm-site .service-cover-copy h1{font-size:42px}
 .lm-site .service-cover-image img{height:320px}
 .lm-site :is(.experience-service-body,.devices22,.editorial22,.prices22,.results22,.experience-team,.service-faq){padding-block:44px}
 .lm-site .device22-copy h3{font-size:32px}
 .lm-site .editorial22-sections h3{font-size:18px}
 .lm-site .experience-people{gap:14px}
 .lm-site .experience-booking-intro{padding-block:34px 24px}
 .lm-site .experience-booking-intro h1{font-size:34px;margin-block:14px 16px}
 .lm-site .experience-booking-intro h1 em{display:block;margin:4px 0 0}
 .lm-site .experience-booking-intro .page-description{font-size:14px}
 .lm-site .experience-steps{display:flex;gap:16px;flex-wrap:nowrap;font-size:10px;margin-top:20px}
 .lm-site .experience-steps span{width:22px;height:22px;font-size:9px}.lm-site .experience-steps li{gap:6px}
 .lm-site .booking-filters{margin-bottom:16px;scroll-margin-top:96px}
 .lm-site .booking-card{padding:20px;gap:16px;grid-template-columns:112px minmax(0,1fr)}
 .lm-site .booking-photo{width:112px;height:112px}
 .lm-site .booking-details h2{font-size:23px}
 .lm-site .booking-details .eyebrow{font-size:8px;letter-spacing:.05em;line-height:1.6}
 .lm-site .booking-actions{grid-column:1/-1;padding-top:12px;border-top:1px solid var(--line);margin-top:0}
 .lm-site .booking-actions .button{width:100%;font-size:12px;min-height:48px}
 .lm-site .booking-actions small{max-width:none;font-size:11px}
 .lm-site .contact07-shortcuts{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x proximity;padding-bottom:12px;margin-bottom:32px}
 .lm-site .contact07-shortcuts>a{flex:0 0 78%;min-height:84px;scroll-snap-align:start;padding:16px}
 .lm-site .contact07-hero-visual-overlay{padding:12px 16px}
 .lm-site .contact07-place,.lm-site .contact07-map-section{padding-block:44px}
 .lm-site .contact07-connect{padding-block:48px;gap:28px}
 .lm-site .contact07-connect-left h2{font-size:36px}
 .lm-site .contact07-connect-right{padding:22px 18px;border-width:4px;border-radius:18px}
 .lm-site .contact07-form-head h2{font-size:28px}
 .lm-site .contact07-no-booking{padding-top:16px;margin-top:16px}
 .lm-site .booking-finale{padding:40px 0}
 .lm-site .booking-finale h2{font-size:34px}
 .lm-site .booking-finale .finale-row{gap:24px;align-items:center}
 .lm-site .site-footer{padding:40px 0 max(24px,env(safe-area-inset-bottom))}
 .lm-site .site-footer .footer-grid{grid-template-columns:1fr;gap:24px;padding-bottom:24px}
 .lm-site .footer-grid>div{padding-bottom:20px;border-bottom:1px solid #ffffff20}
 .lm-site .footer-grid>div:last-child{border-bottom:0;padding-bottom:0;display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
 .lm-site .footer-grid>div:last-child h3{grid-column:1/-1}
 .lm-site .footer-grid h3{margin-bottom:10px}
 .lm-site .site-footer .footer-logo{width:190px}
 .lm-site .site-footer .footer-grid>div>p{margin-top:14px;font-size:13px}
 .lm-site .site-footer .footer-grid a:not(.wordmark){font-size:13px;min-height:38px}
 .lm-site .footer-bottom{gap:12px;padding-top:20px;align-items:start;flex-direction:column}
 .lm-site .footer-bottom>div{gap:0 16px}
}
@media(max-width:360px){.lm-site .site-header .wordmark{width:112px}.lm-site .header-inner{padding-inline:10px}.lm-site .site-header .header-cta{gap:6px}.lm-site .experience-steps{gap:10px;font-size:9px}}

/* Portraits: clip the entire wrapper, including uploaded square backgrounds. */
.lm-site .booking-photo>img,.lm-site .booking-photo>span{display:block;width:100%;height:100%;border:0;border-radius:50%;object-fit:cover;object-position:50% 25%}
.lm-site .booking-photo>span{display:grid;place-items:center}
.lm-site .booking-details{min-width:0;overflow-wrap:anywhere}
@media(min-width:761px){.lm-site .booking-card{grid-template-columns:120px minmax(0,1fr) minmax(0,1fr)}}
@media(min-width:761px) and (max-width:1000px){.lm-site .booking-card{grid-template-columns:120px minmax(0,1fr)}}
@media(max-width:360px){.lm-site .booking-card{grid-template-columns:96px minmax(0,1fr);padding:16px;gap:14px}.lm-site .booking-photo{width:96px;height:96px}}
