
    :root{
      --black:#080705;--black-2:#0f0c09;--brown:#17110d;--cream:#f1e9df;--paper:#e9dfd2;
      --gold:#c89d5a;--gold-light:#e0c28e;--muted:#aca095;--line:rgba(224,194,142,.23);
      --serif:"Cormorant Garamond",Georgia,serif;--sans:"Montserrat",Arial,sans-serif;
    }
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--cream);font-family:var(--sans);font-weight:300;overflow-x:hidden}body.locked{overflow:hidden}
    img{width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}::selection{background:var(--gold);color:#080705}
    .grain{position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.055;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}

    .entry{position:fixed;inset:0;z-index:100;isolation:isolate;overflow:hidden;background:
      radial-gradient(circle at 18% 18%,rgba(207,153,86,.12),transparent 28%),
      radial-gradient(circle at 74% 22%,rgba(184,129,72,.18),transparent 32%),
      radial-gradient(circle at 50% 110%,rgba(96,58,28,.34),transparent 40%),
      linear-gradient(108deg,#050403 0%,#090705 32%,#130e0a 66%,#1b140f 100%);
      transition:opacity 1s ease,visibility 1s ease}
    .entry::before{content:"";position:absolute;inset:16px;border:1px solid rgba(224,194,142,.26);box-shadow:inset 0 0 0 1px rgba(255,255,255,.02),0 0 0 1px rgba(0,0,0,.2);pointer-events:none;z-index:5}
    .entry::after{content:"";position:absolute;inset:0;background:
      radial-gradient(circle at center,transparent 34%,rgba(0,0,0,.42) 100%),
      linear-gradient(90deg,rgba(0,0,0,.28),transparent 42%,rgba(0,0,0,.14));
      pointer-events:none}
    .entry.is-hidden{opacity:0;visibility:hidden}
    .entry-header{position:absolute;z-index:6;left:clamp(28px,4vw,64px);right:clamp(145px,13vw,205px);top:0;height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(224,194,142,.14)}
    .entry-language{display:flex;align-items:center;gap:8px}
    .entry-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(360px,.86fr) minmax(560px,1.28fr);align-items:center;width:100%;height:100%;min-height:100vh;padding:100px clamp(34px,4.4vw,72px) 52px;gap:clamp(24px,4vw,70px)}
    .entry-copy{position:relative;z-index:3;max-width:610px;padding:clamp(22px,2vw,34px) 0 clamp(22px,2vw,24px) clamp(0px,1vw,16px)}
    .entry-copy::before{content:"";position:absolute;inset:-28px -34px -24px -34px;background:linear-gradient(135deg,rgba(255,255,255,.03),rgba(255,255,255,0) 50%),rgba(12,9,7,.24);border:1px solid rgba(224,194,142,.14);backdrop-filter:blur(10px);box-shadow:0 30px 70px rgba(0,0,0,.22);z-index:-1}
    .entry-kicker{font-size:9px;letter-spacing:.42em;text-transform:uppercase;color:#d8b77a;margin-bottom:16px}
    .entry-welcome{font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:#f0e2c7;opacity:.8;margin-bottom:22px}
    .entry-world{margin:0;max-width:8ch;font:500 clamp(72px,8vw,132px)/.82 var(--serif);letter-spacing:-.05em;color:var(--cream);text-shadow:0 12px 38px rgba(0,0,0,.36)}
    .entry-rule{width:48px;height:1px;margin:30px 0 18px;background:linear-gradient(90deg,var(--gold),rgba(224,194,142,0))}
    .entry-prompt{margin:0;color:#e0c38e;font:italic 500 clamp(24px,2.2vw,35px)/1.18 var(--serif)}
    .entry-intro{max-width:30rem;margin:18px 0 0;color:#d8c9b8;font-size:12px;line-height:1.85;letter-spacing:.02em}
    .entry-atmosphere{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
    .entry-atmosphere span{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border:1px solid rgba(224,194,142,.22);background:rgba(255,255,255,.02);font-size:8px;letter-spacing:.3em;text-transform:uppercase;color:#ead3a9}
    .entry-key{width:clamp(48px,4.2vw,68px);height:auto;object-fit:contain;margin:26px 0 18px;transform-origin:50% 45%;filter:drop-shadow(0 12px 25px rgba(0,0,0,.38));animation:keyTurn 4.8s ease-in-out infinite}
    .entry-cta{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
    .enter-btn{position:relative;overflow:hidden;min-width:232px;border:1px solid rgba(224,194,142,.76);background:rgba(8,7,5,.38);padding:18px 36px;letter-spacing:.48em;text-indent:.48em;text-transform:uppercase;font-size:10px;cursor:pointer;backdrop-filter:blur(5px);box-shadow:0 14px 30px rgba(0,0,0,.22);transition:.35s ease}
    .enter-btn::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#f6ecd8,#dbc49b);transform:translateY(102%);transition:.38s cubic-bezier(.2,.8,.2,1);z-index:-1}.enter-btn:hover{color:var(--black);transform:translateY(-2px)}.enter-btn:hover::before{transform:translateY(0)}
    .entry-hint{max-width:17rem;color:#c8b59b;font-size:9px;line-height:1.8;letter-spacing:.16em;text-transform:uppercase}
    .entry-location{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:clamp(34px,5vh,56px);font-size:8px;letter-spacing:.35em;text-transform:uppercase;color:#dfc18c}
    .entry-location i{font-style:normal;color:var(--gold)}
    .entry-door{position:relative;justify-self:end;width:min(66vw,980px);height:min(90vh,940px);display:grid;place-items:center;isolation:isolate}
    .entry-door::before{content:"";position:absolute;left:50%;top:10%;transform:translateX(-50%);width:62%;height:76%;background:radial-gradient(circle at 50% 34%,rgba(232,189,122,.28),rgba(128,82,42,.14) 44%,transparent 72%);filter:blur(34px);opacity:.95;z-index:0;animation:pulseEntryGlow 7s ease-in-out infinite}
    .entry-door::after{content:"";position:absolute;left:50%;bottom:2%;transform:translateX(-50%);width:78%;height:16%;background:radial-gradient(ellipse at center,rgba(224,194,142,.22) 0%,rgba(224,194,142,.08) 38%,transparent 72%);filter:blur(18px);z-index:0}
    .entry-preview{position:absolute;z-index:0;left:50%;top:49%;transform:translate(-50%,-50%) scale(1.02);width:58%;height:77%;overflow:hidden;border-radius:50% 50% 3% 3%/28% 28% 3% 3%;background:url('../media/8d0684cd6eae.webp') 58% center/cover no-repeat;filter:blur(9px) saturate(.78) brightness(.69);box-shadow:inset 0 0 60px rgba(0,0,0,.42);transition:filter .9s ease,transform .9s ease,opacity .7s ease}
    .entry-preview::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(44,28,17,.06),rgba(13,9,7,.28)),radial-gradient(circle at 50% 35%,rgba(255,255,255,.02) 0 18%,rgba(0,0,0,.12) 72%)}
    .entry-door-visual{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 36px 74px rgba(0,0,0,.48));animation:floatDoor 9s ease-in-out infinite;transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .7s ease,filter .7s ease}
    .entry.is-opening .entry-door-visual{transform:scale(1.07);opacity:.08;filter:blur(5px)}
    .entry.is-opening .entry-preview{transform:translate(-50%,-50%) scale(1.15);filter:blur(1px) saturate(.94) brightness(.9)}
    .entry.is-opening .entry-copy{animation:entryCopyOut .72s ease forwards}


    .topbar{position:fixed;inset:0 0 auto;z-index:50;height:82px;padding:0 clamp(18px,3.6vw,56px);display:flex;align-items:center;gap:22px;transition:.35s ease}
    .topbar.scrolled{height:66px;background:rgba(8,7,5,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(224,194,142,.14)}
    .brand{display:flex;align-items:center;gap:12px;white-space:nowrap;flex:0 0 auto;max-width:245px;min-width:0}.brand img{display:block;width:42px;height:auto;max-height:52px;object-fit:contain;object-position:center center;flex:0 0 auto;filter:drop-shadow(0 8px 22px rgba(0,0,0,.28))}.brand-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;line-height:1;min-width:0}.brand-maison{font:600 8px/1 var(--sans);letter-spacing:.19em;text-transform:uppercase;color:#e2d5c4;margin:0 0 4px 0}.brand-sienna{font:500 22px/.95 var(--serif);letter-spacing:.02em;color:var(--cream)}
    .entry-header .brand{align-items:center;gap:13px;max-width:none}.entry-header .brand img{width:46px;height:auto;max-height:56px}.entry-header .brand-copy{align-items:flex-start;justify-content:center;text-align:left;line-height:1}.entry-header .brand-maison{margin:0 0 4px 0;line-height:1}.entry-header .brand-sienna{line-height:.95}
    .nav{display:flex;align-items:center;gap:28px;margin-left:auto}.nav a,.language-label{font-size:9px;letter-spacing:.22em;text-transform:uppercase}.nav a{position:relative}.nav a:not(.request-link)::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--gold);transition:.28s ease}.nav a:hover::after{right:0}
    .request-link{border:1px solid rgba(224,194,142,.52);padding:11px 15px;transition:.3s}.request-link:hover{background:var(--cream);color:var(--black);border-color:var(--cream)}
    .language{display:flex;align-items:center;gap:7px;margin-left:4px}.language-label{color:#b6aa9d;margin-right:2px}.lang-btn{border:0;background:transparent;padding:4px 2px;font-size:9px;letter-spacing:.16em;cursor:pointer;color:#897f76;transition:.25s}.lang-btn.active{color:var(--gold-light)}.lang-sep{font-size:9px;color:#5f574f}

    .sound-control{position:fixed;left:clamp(18px,2.4vw,34px);right:auto;bottom:clamp(18px,2.4vw,34px);top:auto;z-index:115;display:flex;align-items:center;gap:12px;opacity:1;transition:opacity .35s ease,transform .35s ease}
    body.locked .sound-control{left:clamp(18px,2.4vw,34px);right:auto;bottom:clamp(18px,2.4vw,34px);top:auto}
    .sound-control:hover{transform:translateY(-2px)}
    .sound-btn{width:50px;height:50px;border:1px solid rgba(224,194,142,.55);border-radius:50%;background:rgba(8,7,5,.72);backdrop-filter:blur(14px);display:grid;place-items:center;cursor:pointer;transition:background .3s ease,border-color .3s ease,transform .3s ease;box-shadow:0 12px 35px rgba(0,0,0,.24);padding:0}
    .sound-btn:hover{background:rgba(224,194,142,.13);border-color:var(--gold-light)}
    .sound-icon{position:relative;width:18px;height:18px;display:block}
    .sound-icon::before{content:"";position:absolute;left:50%;top:50%;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid var(--gold-light);transform:translate(-38%,-50%);transition:opacity .22s ease,transform .22s ease}
    .sound-icon::after{content:"";position:absolute;opacity:0;left:50%;top:50%;width:10px;height:12px;background:linear-gradient(90deg,var(--gold-light) 0 3px,transparent 3px 7px,var(--gold-light) 7px 10px);transform:translate(-50%,-50%);transition:opacity .22s ease}
    .sound-btn.is-playing .sound-icon::before{opacity:0;transform:translate(-38%,-50%) scale(.65)}
    .sound-btn.is-playing .sound-icon::after{opacity:1}
    .sound-copy{display:flex;flex-direction:column;gap:3px;text-transform:uppercase;pointer-events:none}
    .sound-label{font-size:8px;letter-spacing:.28em;color:#d8c6ae}
    .sound-state{font-size:7px;letter-spacing:.18em;color:#81766c}
    .sound-btn.is-playing + .sound-copy .sound-state{color:var(--gold-light)}


    .menu-btn{display:none;margin-left:auto;width:42px;height:42px;padding:8px;border:0;background:none;cursor:pointer;position:relative;z-index:2}.menu-btn span{display:block;height:1px;background:currentColor;margin:8px 0;transition:.3s}.menu-btn[aria-expanded="true"] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-btn[aria-expanded="true"] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}

    section{position:relative}.section-pad{padding:clamp(95px,10vw,160px) clamp(22px,6vw,90px)}.section-label{color:var(--gold);font-size:9px;letter-spacing:.45em;text-transform:uppercase;margin-bottom:24px}.display{font:500 clamp(54px,7.5vw,112px)/.87 var(--serif);letter-spacing:-.042em;margin:0}.lede{font:400 clamp(22px,2.6vw,38px)/1.3 var(--serif);color:#e8ded2}.body-copy{max-width:640px;color:#b8ada2;font-size:12px;line-height:1.9}

    .salon{min-height:100vh;padding-top:clamp(150px,14vw,220px);background:radial-gradient(circle at 82% 28%,rgba(92,62,36,.19),transparent 28%),linear-gradient(120deg,#090705,#18110d 63%,#080705);overflow:hidden}
    .salon::before{content:"";position:absolute;left:clamp(22px,6vw,90px);top:118px;width:1px;height:70px;background:linear-gradient(var(--gold),transparent)}
    .salon-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.72fr);gap:clamp(55px,8vw,130px);align-items:center}
    .salon-copy{max-width:820px}.salon .display{font-size:clamp(58px,7.8vw,120px)}.salon .lede{max-width:700px;margin:30px 0 25px}
    .salon-image{position:relative;max-width:590px;justify-self:end;margin:0}.salon-image::before{content:"";position:absolute;inset:-19px 20px 20px -19px;border:1px solid rgba(224,194,142,.34)}
    .salon-image img{height:min(74vw,810px);object-fit:cover;filter:saturate(.78) contrast(1.03)}
    .letter{margin-top:62px;padding-top:34px;border-top:1px solid var(--line);display:grid;grid-template-columns:85px 1fr;gap:30px}.letter-mark{font:italic 82px/1 var(--serif);color:var(--gold)}.letter-greeting{font:italic 500 24px/1.1 var(--serif);color:var(--gold-light);margin-bottom:18px}.signature{font:italic 44px/1 var(--serif);color:var(--gold-light);margin-top:22px}

    .marquee{overflow:hidden;border-block:1px solid var(--line);background:#0d0a08}.marquee-track{display:flex;width:max-content;animation:marquee 28s linear infinite}.marquee-set{display:flex;align-items:center;gap:40px;padding:18px 20px}.marquee span{font-size:9px;letter-spacing:.3em;text-transform:uppercase;white-space:nowrap}.marquee i{font-style:normal;color:var(--gold)}

    .pathways{background:var(--paper);color:var(--black)}.pathways-head{max-width:950px;margin-bottom:68px}.pathways .section-label{color:#9a6c2d}.pathway-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.path-card{position:relative;min-height:560px;overflow:hidden;isolation:isolate;display:flex;align-items:flex-end;padding:35px;color:var(--cream);background:#17110d}.path-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.06) 25%,rgba(0,0,0,.9));transition:.6s ease}.path-card::after{content:"";position:absolute;inset:14px;border:1px solid rgba(241,233,223,.26);pointer-events:none}.path-card:hover .path-image{transform:scale(1.055)}.path-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:1s cubic-bezier(.2,.8,.2,1);filter:saturate(.72)}
    .path-content{position:relative;width:100%}.path-num{font:italic 38px/1 var(--serif);color:var(--gold-light);margin-bottom:80px}.path-card h3{font:500 34px/1 var(--serif);margin:0 0 15px}.path-card p{max-width:310px;margin:0;color:#d2c6b8;font-size:11px;line-height:1.7}.arrow-link{display:inline-flex;align-items:center;gap:14px;margin-top:28px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500}.arrow-link::after{content:"";font-size:17px;transition:.25s}.arrow-link:hover::after{transform:translateX(7px)}
    .section-action{margin-top:30px}.section-action.center{text-align:center}.section-action.right{text-align:right}.section-action .arrow-link{margin-top:0;padding-bottom:7px;border-bottom:1px solid rgba(224,194,142,.38);transition:border-color .25s ease,color .25s ease}.section-action .arrow-link:hover{border-bottom-color:currentColor}.availability .section-action .arrow-link,.pathways .section-action .arrow-link{border-bottom-color:rgba(8,7,5,.25)}

    .experiences{background:#0a0806;overflow:hidden}.experiences-intro{display:grid;grid-template-columns:1fr .62fr;gap:80px;align-items:end;margin-bottom:68px}.experiences .display{max-width:900px}
    .experience-tabs{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.experience-tab{border:0;border-right:1px solid var(--line);background:transparent;padding:24px 12px;font-size:9px;letter-spacing:.19em;text-transform:uppercase;cursor:pointer;transition:.3s}.experience-tab:last-child{border-right:0}.experience-tab:hover,.experience-tab.active{background:var(--gold);color:var(--black)}
    .experience-stage{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(370px,.85fr);min-height:680px;border:1px solid var(--line);border-top:0}.experience-visual{position:relative;overflow:hidden}.experience-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,rgba(8,7,5,.28))}.experience-visual img{height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.8,.2,1),opacity .2s ease;filter:saturate(.78)}.experience-stage:hover .experience-visual img{transform:scale(1.035)}
    .experience-detail{display:flex;flex-direction:column;justify-content:center;padding:clamp(42px,5vw,78px);background:linear-gradient(140deg,#17110d,#090705)}.experience-detail h3{font:500 clamp(42px,4.7vw,68px)/.92 var(--serif);margin:0 0 24px}.detail-list{display:grid;gap:18px;margin:26px 0}.detail-item{padding-top:17px;border-top:1px solid var(--line)}.detail-item strong{display:block;font:500 20px/1.1 var(--serif);margin-bottom:7px}.detail-item span{color:var(--muted);font-size:10px;line-height:1.65}.cityline{color:var(--gold-light);font-size:8px;letter-spacing:.23em;margin:10px 0}

    .destinations{background:#070604}.destinations-head{text-align:center}.destinations-head .display{max-width:1120px;margin:auto}.destination-list{display:grid;gap:1px;background:#201812}.destination{position:relative;min-height:88vh;display:flex;align-items:flex-end;padding:clamp(35px,6vw,82px);overflow:hidden;isolation:isolate;contain:paint}.destination-bg{position:absolute;inset:-6%;z-index:-2;background-position:center;background-size:cover;filter:saturate(.8);transform:translate3d(0,var(--parallax-y,0px),0);scale:1;transition:scale 1.2s cubic-bezier(.2,.7,.2,1);will-change:transform,scale;backface-visibility:hidden;-webkit-backface-visibility:hidden}.destination::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.82))}.destination:hover .destination-bg{scale:1.05}.destination-copy{width:100%;display:grid;grid-template-columns:1fr minmax(260px,380px);align-items:end;gap:30px}.destination-country{font-size:9px;letter-spacing:.38em;text-transform:uppercase;color:var(--gold-light)}.destination h3{font:500 clamp(78px,12vw,176px)/.7 var(--serif);letter-spacing:-.05em;margin:14px 0 0}.destination p{font:400 21px/1.35 var(--serif);margin:0;text-align:right}
    .statement{padding:110px 22px;text-align:center;background:var(--paper);color:var(--black)}.statement p{max-width:960px;margin:0 auto 35px;font:italic 500 clamp(38px,6vw,76px)/1 var(--serif)}.statement small{display:block;margin:-13px auto 42px;font-size:9px;letter-spacing:.25em;text-transform:uppercase;color:#685f56}.gold-btn{display:inline-block;padding:17px 29px;border:1px solid var(--black);background:var(--black);color:var(--cream);font-size:8px;letter-spacing:.3em;text-transform:uppercase;transition:.3s}.gold-btn:hover{background:transparent;color:var(--black)}

    .gallery{background:#0a0806}.gallery-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:60px}.gallery-grid{display:block;columns:3 310px;column-gap:14px}.gallery-card{position:relative;overflow:hidden;background:#17110d;margin:0 0 14px;break-inside:avoid;-webkit-column-break-inside:avoid;display:inline-block;width:100%}.gallery-card img{width:100%;height:auto;object-fit:contain;filter:saturate(1) sepia(.17) brightness(1.035) contrast(1.03);transition:.72s ease}.gallery-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(0,0,0,.66));pointer-events:none}.gallery-card:hover img{transform:scale(1.01);filter:saturate(1.035) sepia(.1) brightness(1.055) contrast(1.04)}.tag{position:absolute;z-index:1;left:18px;bottom:16px;font-size:12px;line-height:1.25;letter-spacing:.22em;text-transform:uppercase}.subtag{display:block;margin-top:7px;color:#cbbfae;font-size:9px;line-height:1.35;letter-spacing:.16em}.g1,.g2,.g3,.g4,.g5,.g6,.g7,.g8,.g9,.g10{grid-column:auto;grid-row:auto}.gallery-footer-cta{max-width:860px;margin:clamp(56px,7vw,92px) auto 0;padding:clamp(34px,4.5vw,54px) clamp(22px,5vw,64px);text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(90deg,transparent,rgba(200,157,90,.055),transparent)}.gallery-footer-cta p{max-width:620px;margin:0 auto;color:var(--cream);font:500 clamp(26px,3.1vw,42px)/1.05 var(--serif)}.gallery-footer-cta .section-action{margin-top:26px}

    .request{background:linear-gradient(rgba(8,7,5,.84),rgba(8,7,5,.95)),url('../media/41ee35ae7c2e.webp') center/cover fixed}.request-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(50px,8vw,120px)}.request-copy{position:sticky;top:120px;align-self:start}.request-copy .display{font-size:clamp(57px,7.4vw,104px)}.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);margin-top:50px}.trust{padding:23px;background:rgba(8,7,5,.75);font:500 18px/1.1 var(--serif)}
    .form-card{padding:clamp(30px,5vw,64px);border:1px solid var(--line);background:rgba(8,7,5,.74);backdrop-filter:blur(12px)}.form-card h3{font:500 48px/1 var(--serif);margin:0 0 12px}.form-card>p{color:var(--muted);font-size:11px;line-height:1.75;margin:0 0 38px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:grid;gap:8px}.field.full{grid-column:1/-1}.field label{color:var(--gold-light);font-size:8px;letter-spacing:.24em;text-transform:uppercase}.field input,.field select,.field textarea{width:100%;padding:13px 0;border:0;border-bottom:1px solid rgba(224,194,142,.34);border-radius:0;outline:0;color:var(--cream);background:transparent}.field input:focus,.field select:focus,.field textarea:focus{border-bottom-color:var(--gold)}.field textarea{min-height:120px;resize:vertical}.field textarea::placeholder{color:rgba(224,194,142,.42);line-height:1.8;white-space:pre-line}.field select option{background:#100d0a}.check{grid-column:1/-1;display:flex;align-items:center;gap:11px;color:var(--muted);font-size:10px}.submit{width:100%;margin-top:12px;padding:17px;border:1px solid var(--gold);background:var(--gold);color:var(--black);font-size:8px;letter-spacing:.3em;text-transform:uppercase;cursor:pointer;transition:.3s}.submit:hover{background:transparent;color:var(--cream)}

    .form-success{min-height:420px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:20px 0}.form-success[hidden]{display:none}.form-success-mark{font:italic 500 76px/1 var(--serif);color:var(--gold-light);margin-bottom:18px}.form-success h3{font:500 clamp(42px,5vw,66px)/.95 var(--serif);margin:0 0 22px}.form-success p{max-width:540px;color:#c0b3a5;font-size:12px;line-height:1.9;margin:0}.form-success-signature{font:italic 500 42px/1 var(--serif);color:var(--gold-light);margin-top:28px}.submit[disabled]{opacity:.55;cursor:wait}

    .availability{background:var(--paper);color:var(--black);padding:clamp(80px,8vw,120px) clamp(22px,6vw,90px)}.availability-head{text-align:center;max-width:850px;margin:0 auto 58px}.availability .section-label{color:#9a6c2d}.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.city-card{position:relative;min-height:360px;overflow:hidden;isolation:isolate;display:flex;align-items:flex-end;padding:25px;color:var(--cream);background:#21160f}.city-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(23,13,7,.02),rgba(15,8,4,.82))}.city-card img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;background:#21160f;filter:saturate(.78) sepia(.1) contrast(1.04) brightness(.9);transition:.8s ease}.city-card:hover img{transform:scale(1.025);filter:saturate(.94) sepia(.04) contrast(1.03) brightness(.96)}.city-card small{display:block;font-size:7px;letter-spacing:.25em;text-transform:uppercase;color:#dfcfb7;margin-bottom:7px}.city-card h3{font:500 34px/1 var(--serif);margin:0}.city-card.more{background:#17110d;align-items:center;justify-content:center;text-align:center}.city-card.more::before{display:none}.city-card.more h3{font-size:52px;color:var(--gold-light)}

    footer{display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px;padding:54px clamp(22px,6vw,90px);border-top:1px solid var(--line)}footer .brand img{width:54px;height:64px}footer .brand-sienna{font-size:31px}.footer-note{text-align:right;color:var(--muted);font-size:8px;line-height:1.85}
    .reveal{opacity:0;transform:translateY(34px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.8,.2,1)}.reveal.in-view{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}.delay-3{transition-delay:.36s}
    @keyframes marquee{to{transform:translateX(-50%)}}
    @keyframes floatDoor{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
    @keyframes keyTurn{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-5px) rotate(9deg)}}
    @keyframes pulseEntryGlow{0%,100%{opacity:.82;transform:translateX(-50%) scale(.98)}50%{opacity:1;transform:translateX(-50%) scale(1.04)}}
    @keyframes enterWorld{to{opacity:0;transform:translate(-50%,-50%) scale(1.12)}}
    @keyframes entryCopyOut{to{opacity:0;transform:translateX(-18px)}}

    @media(max-width:1180px){.topbar{gap:16px;padding-inline:24px}.nav{gap:17px}.nav a,.language-label{font-size:8px;letter-spacing:.18em}.request-link{padding:10px 12px}.brand{max-width:195px}.brand img{width:36px;height:43px}.brand-maison{font-size:7px}.brand-sienna{font-size:20px}}
    @media(max-width:1080px){.language-label{display:none}.nav{gap:14px}.path-card{min-height:500px}.city-grid{grid-template-columns:repeat(2,1fr)}.entry-inner{grid-template-columns:minmax(320px,.84fr) minmax(470px,1.16fr)}.entry-door{width:min(67vw,840px)}}
    @media(max-width:900px){
      .entry-header{left:20px;right:92px;height:70px}.entry-inner{display:block;padding:80px 16px 24px}.entry-door{position:absolute;inset:72px 0 12px;width:100%;height:auto;opacity:.72}.entry-preview{width:54%;height:68%;filter:blur(10px) saturate(.78) brightness(.58)}.entry-copy{position:absolute;z-index:4;left:50%;top:51%;transform:translate(-50%,-50%);width:min(88vw,470px);padding:34px 26px;text-align:center;background:rgba(7,5,4,.44);border:1px solid rgba(224,194,142,.23);backdrop-filter:blur(12px)}.entry-copy::before{inset:0;background:none;border:0;box-shadow:none}.entry-world{max-width:none}.entry-intro{max-width:none}.entry-atmosphere,.entry-location,.entry-cta{justify-content:center}.entry-cta{gap:16px}.entry-hint{max-width:20rem}.entry-rule{margin:24px auto 17px}.entry-key{margin:20px auto}.entry-location{margin-top:34px}

      .topbar,.topbar.scrolled{height:72px;padding:0 16px;background:rgba(8,7,5,.96);border-bottom:1px solid rgba(224,194,142,.14);backdrop-filter:none;-webkit-backdrop-filter:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
      .topbar .brand{position:relative;z-index:3;min-width:0;max-width:calc(100vw - 82px);flex:0 1 auto}
      .nav{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;min-height:100svh;margin:0;padding:104px 24px 44px;transform:translate3d(100%,0,0);transition:transform .46s cubic-bezier(.2,.8,.2,1),opacity .28s ease,visibility .28s ease;background:rgba(8,7,5,.992);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:24px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;z-index:1;opacity:0;visibility:hidden;pointer-events:none}
      .nav.open{transform:translate3d(0,0,0);opacity:1;visibility:visible;pointer-events:auto}
      .nav a{font-size:12px;line-height:1.35;text-align:center;padding:7px 4px}
      .nav .request-link{margin-top:8px;padding:13px 18px}
      .language{margin:6px 0 0;justify-content:center}
      .language-label{display:none}
      .menu-btn{display:block;position:relative;z-index:3;flex:0 0 44px;width:44px;height:44px;margin-left:auto;padding:0;border:1px solid rgba(224,194,142,.24);border-radius:50%;background:rgba(8,7,5,.35)}
      .menu-btn span{position:absolute;left:11px;right:11px;height:1px;margin:0;background:currentColor;transition:transform .3s ease,top .3s ease,opacity .3s ease}
      .menu-btn span:first-child{top:17px}.menu-btn span:last-child{top:25px}
      .menu-btn[aria-expanded="true"] span:first-child{top:21px;transform:rotate(45deg)}
      .menu-btn[aria-expanded="true"] span:last-child{top:21px;transform:rotate(-45deg)}

      .salon-grid,.experiences-intro,.experience-stage,.request-grid{grid-template-columns:1fr}.salon-image{justify-self:stretch;max-width:none}.salon-image img{height:78vh}.pathway-grid{grid-template-columns:1fr}.path-card{min-height:68vh}.experience-stage{min-height:0}.experience-visual{height:66vw;min-height:440px}.request-copy{position:static}.destination-copy{grid-template-columns:1fr}.destination p{text-align:left}.gallery-grid{columns:2 280px}
    }
    @media(max-width:620px){

      .sound-control{left:14px;right:auto;bottom:14px;top:auto;gap:0}.sound-btn{width:44px;height:44px}.sound-copy{display:none}body.locked .sound-control{left:14px;right:auto;bottom:14px;top:auto}
      .entry::before{inset:8px}.entry-header{left:15px;right:68px;height:64px}.entry-header .brand img{width:34px;height:auto;max-height:42px}.entry-header .brand-maison{font-size:7px}.entry-header .brand-sienna{font-size:18px}.entry-language{gap:5px}.entry-language .lang-btn{font-size:8px}.entry-door{inset:66px -8% 8px;width:116%;opacity:.62}.entry-preview{width:50%;height:62%}.entry-copy{top:52%;width:min(90vw,370px);padding:28px 20px}.entry-kicker{font-size:7px;letter-spacing:.28em;margin-bottom:12px}.entry-welcome{font-size:7px;letter-spacing:.22em;margin-bottom:16px}.entry-world{font-size:56px}.entry-prompt{font-size:20px}.entry-intro{font-size:11px;line-height:1.72}.entry-atmosphere{gap:8px;margin-top:20px}.entry-atmosphere span{padding:9px 12px;font-size:7px;letter-spacing:.22em}.entry-hint{font-size:8px;letter-spacing:.12em}.entry-key{width:50px;margin:16px auto}.entry-location{font-size:7px;letter-spacing:.25em}.topbar,.topbar.scrolled{height:70px;padding:0 14px}.topbar .brand{max-width:calc(100vw - 76px);gap:8px}.topbar .brand img{width:34px;height:auto;max-height:42px}.topbar .brand-maison{font-size:7px;letter-spacing:.16em}.topbar .brand-sienna{font-size:18px}.menu-btn{flex-basis:42px;width:42px;height:42px}.nav{padding:96px 20px 34px;gap:21px}.section-pad{padding:84px 20px}.salon{padding-top:130px}.salon::before{display:none}.salon .display{font-size:17vw}.salon-image img{height:72vh}.letter{grid-template-columns:1fr;gap:8px}.letter-mark{font-size:60px}
      .marquee-set{padding-block:15px}.pathways-head{margin-bottom:42px}.path-card{min-height:70vh;padding:28px}.path-num{margin-bottom:55px}.experience-tabs{grid-template-columns:1fr 1fr}.experience-tab:nth-child(2){border-right:0}.experience-tab:nth-child(-n+2){border-bottom:1px solid var(--line)}.experience-visual{height:105vw;min-height:360px}.experience-detail{padding:38px 24px}.destination{min-height:72vh;padding:30px 20px}.destination h3{font-size:24vw}.destination p{font-size:19px}.statement{padding:80px 20px}.gallery-head{display:block}.gallery-head .body-copy{margin-top:20px;max-width:19rem;line-height:1.75;text-wrap:balance}.gallery-grid{display:block;columns:1}.gallery-card{width:100%;margin-bottom:12px}.gallery-card img{height:auto;max-height:none}.form-grid{grid-template-columns:1fr}.field.full,.check{grid-column:auto}.trust-grid{grid-template-columns:1fr}.city-grid{grid-template-columns:1fr}.city-card{min-height:70vh}.request{background-attachment:scroll}footer{grid-template-columns:1fr}.footer-note{text-align:left}footer .brand{font-size:36px}
    }
    @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
  

    /* Final refinement pass — client feedback */
    main > section{
      scroll-margin-top:76px;
    }

    /* Softer, more continuous movement as sections enter the viewport. */
    .reveal{
      transform:translateY(24px);
      transition:
        opacity 1.08s cubic-bezier(.22,.72,.18,1),
        transform 1.08s cubic-bezier(.22,.72,.18,1);
      will-change:opacity,transform;
    }
    .delay-1{transition-delay:.10s}
    .delay-2{transition-delay:.20s}
    .delay-3{transition-delay:.30s}

    /* Soften the visual handoff between major sections without changing the palette. */
    .experiences,
    .pathways,
    .destinations,
    .gallery,
    .availability,
    .request{
      box-shadow:
        inset 0 90px 100px -118px rgba(224,194,142,.16),
        inset 0 -90px 100px -118px rgba(0,0,0,.72);
    }

    /* Destination panels now blend into one another more naturally. */
    .destination-list{gap:0}
    .destination{
      min-height:90vh;
      margin-top:-1px;
    }
    .destination::before{
      content:"";
      position:absolute;
      inset:-1px 0 auto;
      height:18vh;
      z-index:-1;
      pointer-events:none;
      background:linear-gradient(180deg,rgba(7,6,4,.78) 0%,rgba(7,6,4,.18) 48%,transparent 100%);
    }
    .destination-bg{
      transition:
        transform 1.7s cubic-bezier(.18,.72,.2,1),
        filter 1.25s ease;
    }
    .destination:hover .destination-bg{
      transform:scale(1.035);
      filter:saturate(.88) brightness(1.03);
    }
    .destination p{
      max-width:390px;
      padding:3px 0 3px 24px;
      border-left:1px solid rgba(224,194,142,.52);
      text-shadow:0 2px 18px rgba(0,0,0,.65);
    }

    @media(min-width:901px){
      /* Slightly larger explanatory copy for easier desktop reading. */
      .body-copy{
        max-width:680px;
        font-size:14px;
        line-height:1.82;
        color:#c3b8ad;
      }

      /* Give the primary private-request CTA more presence, while staying restrained. */
      .request-link{
        overflow:hidden;
        isolation:isolate;
        padding:13px 20px;
        border-color:rgba(224,194,142,.78);
        background:linear-gradient(135deg,rgba(178,130,78,.24),rgba(224,194,142,.07));
        color:#f5ebdf;
        letter-spacing:.24em;
        box-shadow:
          inset 0 0 0 1px rgba(255,245,229,.035),
          0 10px 28px rgba(0,0,0,.24),
          0 0 22px rgba(178,130,78,.08);
        transition:
          color .35s ease,
          background .35s ease,
          border-color .35s ease,
          box-shadow .35s ease,
          transform .35s cubic-bezier(.2,.8,.2,1);
      }
      .request-link::before{
        content:"";
        position:absolute;
        top:-120%;
        left:-35%;
        width:34%;
        height:340%;
        z-index:-1;
        pointer-events:none;
        background:linear-gradient(90deg,transparent,rgba(255,247,235,.19),transparent);
        transform:rotate(18deg) translateX(-180%);
        transition:transform .75s cubic-bezier(.2,.8,.2,1);
      }
      .request-link:hover{
        color:#110d09;
        border-color:#e4c99a;
        background:#e4c99a;
        box-shadow:0 14px 34px rgba(0,0,0,.34),0 0 28px rgba(224,194,142,.14);
        transform:translateY(-1px);
      }
      .request-link:hover::before{
        transform:rotate(18deg) translateX(520%);
      }
    }

    @media(max-width:900px){
      .destination{min-height:74vh}
      .destination p{
        max-width:34rem;
        padding:14px 0 0;
        border-left:0;
        border-top:1px solid rgba(224,194,142,.42);
      }
    }

    @media(prefers-reduced-motion:reduce){
      .reveal,
      .destination-bg,
      .request-link,
      .request-link::before{
        transition-duration:.01ms !important;
      }
    }

  

/* Compact one-screen experience section */
@media (min-width: 901px){
  #experiences.section-pad{
    min-height: 100vh;
    padding-top: clamp(54px, 6vh, 78px);
    padding-bottom: clamp(54px, 6vh, 78px);
    display: flex;
    flex-direction: column;
  }
  #experiences .experiences-intro{
    grid-template-columns: 1fr .55fr;
    gap: clamp(34px, 5vw, 70px);
    margin-bottom: clamp(28px, 3.6vh, 40px);
  }
  #experiences .section-label{
    margin-bottom: 14px;
  }
  #experiences .display{
    font-size: clamp(46px, 5.2vw, 78px);
    line-height: .9;
    max-width: 760px;
  }
  #experiences .body-copy{
    font-size: 11px;
    line-height: 1.7;
  }
  #experiences .experience-tabs{
    flex: 0 0 auto;
  }
  #experiences .experience-tab{
    padding: 16px 10px;
    font-size: 8px;
    letter-spacing: .17em;
  }
  #experiences .experience-stage{
    flex: 1 1 auto;
    min-height: 0;
    height: clamp(500px, 56vh, 620px);
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr);
  }
  #experiences .experience-detail{
    justify-content: center;
    padding: clamp(30px, 3.8vw, 52px);
  }
  #experiences .experience-detail h3{
    font-size: clamp(34px, 3.7vw, 54px);
    line-height: .96;
    margin-bottom: 16px;
  }
  #experiences .detail-list{
    gap: 10px;
    margin: 18px 0;
  }
  #experiences .detail-item{
    padding-top: 11px;
  }
  #experiences .detail-item strong{
    font-size: 17px;
    margin-bottom: 5px;
  }
  #experiences .detail-item span{
    font-size: 9px;
    line-height: 1.5;
  }
  #experiences .cityline{
    margin-top: 6px;
  }
}
@media (min-width: 901px) and (max-height: 820px){
  #experiences.section-pad{
    padding-top: 42px;
    padding-bottom: 42px;
  }
  #experiences .experiences-intro{
    margin-bottom: 22px;
  }
  #experiences .display{
    font-size: clamp(42px, 4.8vw, 66px);
  }
  #experiences .experience-stage{
    height: clamp(450px, 54vh, 540px);
  }
  #experiences .experience-detail h3{
    font-size: clamp(32px, 3.4vw, 48px);
  }
}



/* Mobile-only override: show gallery photos in their original color immediately */
@media (max-width: 900px), (hover: none) and (pointer: coarse){
  .gallery-card img{
    filter:none !important;
    transform:none !important;
  }
  .gallery-card:hover img{
    filter:none !important;
    transform:none !important;
  }
}



  /* First-page header refinement only */
  .entry-header{
    top:16px;
    padding-top:0;
  }
  .entry-header .entry-language .lang-btn{
    font-size:11px;
    line-height:1;
    letter-spacing:.18em;
    padding:6px 3px;
  }
  .entry-header .entry-language .lang-sep{
    font-size:11px;
    line-height:1;
  }

  @media (max-width:900px){
    .entry-header{
      top:14px;
      padding-top:0;
    }
    .entry-header .entry-language .lang-btn{font-size:10px;padding:6px 2px;}
    .entry-header .entry-language .lang-sep{font-size:10px;}
  }

  @media (max-width:620px){
    .entry-header{
      top:8px;
      padding-top:0;
    }
    .entry-header .entry-language{gap:6px;}
    .entry-header .entry-language .lang-btn{font-size:10px;letter-spacing:.14em;padding:7px 2px;}
    .entry-header .entry-language .lang-sep{font-size:10px;}
  }



  /* Keeps the Experiences tabs elegant while preventing the bottom panel from being clipped */
  #experiences{
    overflow: visible !important;
  }

  @media (min-width: 901px){
    #experiences.section-pad{
      min-height: auto !important;
      padding-top: clamp(46px, 5vh, 68px) !important;
      padding-bottom: clamp(64px, 7vh, 92px) !important;
    }

    #experiences .experience-stage{
      height: auto !important;
      min-height: clamp(560px, calc(100vh - 250px), 660px) !important;
      overflow: visible !important;
    }

    #experiences .experience-detail{
      min-height: 100%;
      overflow: visible !important;
      padding-bottom: clamp(42px, 4.2vw, 64px) !important;
    }

    #experiences .experience-visual{
      min-height: inherit;
    }
  }

  @media (min-width: 901px) and (max-height: 820px){
    #experiences.section-pad{
      padding-top: 34px !important;
      padding-bottom: 58px !important;
    }

    #experiences .experiences-intro{
      margin-bottom: 18px !important;
    }

    #experiences .experience-stage{
      min-height: 520px !important;
    }

    #experiences .detail-list{
      gap: 9px !important;
      margin: 14px 0 !important;
    }
  }



  .request-stack{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:8px;
    margin-left:8px;
    flex:0 0 auto;
  }
  .request-stack .request-link{
    margin:0;
  }
  .header-note{
    font-size:10px;
    letter-spacing:.03em;
    line-height:1.35;
    color:#d7c6b0;
    white-space:nowrap;
    margin:0;
    text-transform:none;
    text-align:center;
  }

  @media (min-width:901px){
    #experiences.section-pad{
      padding-bottom:30px !important;
    }
    #experiences .experiences-intro{
      align-items:end;
      gap:clamp(36px,4.5vw,72px);
      margin-bottom:24px !important;
    }
    #experiences .experience-tabs{
      margin-bottom:0;
    }
    #experiences .experience-tab{
      min-height:58px;
      display:flex;
      align-items:center;
      justify-content:center;
      text-align:center;
    }
    #experiences .experience-stage{
      grid-template-columns:minmax(0,1.02fr) minmax(390px,.98fr) !important;
      align-items:stretch;
      height:auto !important;
      min-height:clamp(630px,calc(100vh - 205px),760px) !important;
      overflow:visible !important;
    }
    #experiences .experience-visual,
    #experiences .experience-visual img{
      height:100%;
      min-height:100%;
    }
    #experiences .experience-detail{
      justify-content:flex-start !important;
      padding:clamp(38px,4vw,60px) clamp(38px,4vw,60px) clamp(56px,5vw,84px) !important;
      overflow:visible !important;
    }
    #experiences .experience-detail h3{
      margin-bottom:18px !important;
      max-width:10ch;
    }
    #experiences .detail-list{
      gap:14px !important;
      margin:18px 0 0 !important;
      padding-bottom:6px;
    }
    #experiences .detail-item{
      padding-top:14px !important;
    }
    #experiences .detail-item strong{
      margin-bottom:6px;
    }
    #experiences .detail-item span{
      font-size:10px !important;
      line-height:1.62 !important;
      display:block;
    }
    #experiences .cityline{
      margin-top:20px !important;
    }
  }

  @media (max-width:1180px){
    .request-stack{margin-left:4px;}
    .header-note{display:none;}
  }

  @media (max-width:900px){
    #experiences .experience-tabs{
      grid-template-columns:1fr 1fr;
    }
    #experiences .experience-stage{
      grid-template-columns:1fr !important;
      min-height:0 !important;
      height:auto !important;
    }
    #experiences .experience-visual{
      min-height:380px !important;
      height:64vw !important;
    }
    #experiences .experience-detail{
      padding:36px 24px 42px !important;
    }
    #experiences .experience-detail h3{
      margin-bottom:16px !important;
    }
    #experiences .detail-list{
      gap:12px !important;
      margin:18px 0 0 !important;
    }
    #experiences .detail-item span{
      font-size:11px !important;
      line-height:1.7 !important;
      display:block;
    }
  }

/* Availability line below the header — static on the page, not sticky while scrolling */
.request-stack{display:contents !important;}
.request-stack .header-note{display:none !important;}
.below-header-note{
  position:absolute;
  top:86px;
  right:clamp(22px,4.8vw,70px);
  z-index:70;
  color:#d7c6b0;
  font-size:10px;
  line-height:1.35;
  letter-spacing:.035em;
  text-align:right;
  pointer-events:none;
  opacity:.92;
}
body.locked .below-header-note{display:none;}
@media(max-width:900px){.below-header-note{display:none !important;}}

/* Experiences section alignment polish */
#experiences{
  overflow:visible !important;
}
#experiences .experience-tabs,
#experiences .experience-stage{
  width:100%;
  box-sizing:border-box;
}
#experiences .experience-tabs{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  border:1px solid var(--line) !important;
  border-bottom:0 !important;
  background:rgba(255,255,255,.012);
}
#experiences .experience-tab{
  border:0 !important;
  border-right:1px solid var(--line) !important;
  min-height:60px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  padding:16px 12px !important;
}
#experiences .experience-tab:last-child{border-right:0 !important;}
#experiences .experience-stage{
  border:1px solid var(--line) !important;
  border-top:0 !important;
  display:grid !important;
  overflow:hidden !important;
}
@media(min-width:901px){
  #experiences.section-pad{
    padding-top:clamp(54px,6vw,86px) !important;
    padding-bottom:clamp(78px,7vw,110px) !important;
  }
  #experiences .experiences-intro{
    margin-bottom:28px !important;
  }
  #experiences .experience-stage{
    grid-template-columns:minmax(0,1.04fr) minmax(410px,.96fr) !important;
    min-height:620px !important;
    height:auto !important;
  }
  #experiences .experience-visual{
    min-height:620px !important;
  }
  #experiences .experience-visual img{
    height:100% !important;
    min-height:100% !important;
    object-fit:cover !important;
  }
  #experiences .experience-detail{
    justify-content:center !important;
    padding:clamp(44px,4.2vw,68px) clamp(44px,4.5vw,76px) !important;
    overflow:visible !important;
  }
  #experiences .experience-detail h3{
    max-width:12ch !important;
    margin-bottom:18px !important;
  }
  #experiences .detail-list{
    gap:14px !important;
    margin:20px 0 18px !important;
    padding-bottom:0 !important;
  }
  #experiences .detail-item{
    padding-top:14px !important;
  }
  #experiences .detail-item span{
    line-height:1.62 !important;
  }
  #experiences .cityline{
    margin-top:8px !important;
  }
}
@media(max-width:900px){
  #experiences .experience-tabs{
    grid-template-columns:1fr 1fr !important;
  }
  #experiences .experience-tab:nth-child(2){border-right:0 !important;}
  #experiences .experience-tab:nth-child(-n+2){border-bottom:1px solid var(--line) !important;}
  #experiences .experience-stage{
    grid-template-columns:1fr !important;
    height:auto !important;
    min-height:0 !important;
    overflow:hidden !important;
  }
  #experiences .experience-visual{
    height:72vw !important;
    min-height:360px !important;
  }
  #experiences .experience-detail{
    padding:38px 24px 44px !important;
  }
}



/* Final polish: fixed availability note + experience section geometry */
.request-stack{display:contents !important;}
.request-stack .header-note{display:none !important;}
.below-header-note{
  position:fixed !important;
  top:86px !important;
  right:clamp(18px,4.6vw,68px) !important;
  z-index:84 !important;
  display:block !important;
  max-width:min(360px,calc(100vw - 36px));
  padding:9px 13px 10px !important;
  border:1px solid rgba(224,194,142,.18);
  border-radius:999px;
  background:rgba(12,8,5,.46) !important;
  -webkit-backdrop-filter:blur(14px) saturate(1.05);
  backdrop-filter:blur(14px) saturate(1.05);
  box-shadow:0 10px 34px rgba(0,0,0,.26);
  color:#eadcc7 !important;
  font-size:10px !important;
  line-height:1.35 !important;
  letter-spacing:.035em !important;
  text-align:right !important;
  opacity:.96 !important;
  pointer-events:none;
}
body.locked .below-header-note{display:none !important;}
.topbar.scrolled ~ .below-header-note{top:76px !important;}

#experiences{
  overflow:visible !important;
}
#experiences.section-pad{
  padding-top:clamp(86px,8vw,130px) !important;
  padding-bottom:clamp(86px,8vw,130px) !important;
}
#experiences .experiences-intro{
  width:100% !important;
  max-width:1520px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  margin-bottom:clamp(34px,4vw,56px) !important;
  align-items:end !important;
}
#experiences .experience-tabs,
#experiences .experience-stage{
  width:100% !important;
  max-width:1520px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  box-sizing:border-box !important;
}
#experiences .experience-tabs{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:0 !important;
  border:0 !important;
  outline:1px solid var(--line) !important;
  outline-offset:0 !important;
  background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.006)) !important;
}
#experiences .experience-tab{
  position:relative !important;
  min-height:64px !important;
  height:auto !important;
  padding:18px 12px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  border:0 !important;
  border-right:1px solid var(--line) !important;
  box-sizing:border-box !important;
  line-height:1.25 !important;
  white-space:normal !important;
}
#experiences .experience-tab:last-child{border-right:0 !important;}
#experiences .experience-tab.active{
  background:rgba(224,194,142,.075) !important;
  box-shadow:inset 0 -1px 0 rgba(224,194,142,.24) !important;
}
#experiences .experience-stage{
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(410px,.95fr) !important;
  border:0 !important;
  outline:1px solid var(--line) !important;
  outline-offset:0 !important;
  margin-top:1px !important;
  min-height:0 !important;
  height:auto !important;
  overflow:visible !important;
  background:#0b0806 !important;
}
#experiences .experience-visual{
  position:relative !important;
  height:auto !important;
  min-height:clamp(560px,52vw,700px) !important;
  overflow:hidden !important;
  align-self:stretch !important;
}
#experiences .experience-visual img{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
}
#experiences .experience-detail{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-self:stretch !important;
  padding:clamp(38px,4.2vw,64px) clamp(36px,4.5vw,70px) !important;
  overflow:visible !important;
  box-sizing:border-box !important;
}
#experiences .cityline{
  margin:0 0 clamp(14px,1.5vw,22px) !important;
  font-size:8px !important;
  line-height:1.6 !important;
  letter-spacing:.22em !important;
}
#experiences .experience-detail h3{
  font-size:clamp(36px,3.55vw,58px) !important;
  line-height:.96 !important;
  letter-spacing:-.025em !important;
  max-width:13ch !important;
  margin:0 0 clamp(14px,1.7vw,24px) !important;
}
#experiences #experienceText{
  margin:0 !important;
  max-width:37rem !important;
  font-size:12px !important;
  line-height:1.75 !important;
}
#experiences .detail-list{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  margin:clamp(22px,2.4vw,34px) 0 0 !important;
  padding:0 !important;
}
#experiences .detail-item{
  padding:clamp(13px,1.3vw,18px) 0 !important;
  border-top:1px solid var(--line) !important;
  min-width:0 !important;
}
#experiences .detail-item:last-child{
  padding-bottom:0 !important;
}
#experiences .detail-item strong{
  display:block !important;
  margin:0 0 6px !important;
  font-size:clamp(18px,1.35vw,22px) !important;
  line-height:1.16 !important;
}
#experiences .detail-item span{
  display:block !important;
  max-width:100% !important;
  font-size:10.5px !important;
  line-height:1.62 !important;
  color:var(--muted) !important;
}

@media(max-width:1180px){
  .below-header-note{top:78px !important;right:18px !important;font-size:9px !important;}
  #experiences .experience-stage{grid-template-columns:minmax(0,1fr) minmax(360px,.86fr) !important;}
  #experiences .experience-detail{padding:38px 34px !important;}
}
@media(max-width:900px){
  .below-header-note{display:none !important;}
  #experiences.section-pad{padding-top:84px !important;padding-bottom:88px !important;}
  #experiences .experiences-intro{grid-template-columns:1fr !important;gap:22px !important;margin-bottom:32px !important;}
  #experiences .experience-tabs{grid-template-columns:1fr 1fr !important;}
  #experiences .experience-tab{min-height:58px !important;padding:15px 10px !important;}
  #experiences .experience-tab:nth-child(2){border-right:0 !important;}
  #experiences .experience-tab:nth-child(-n+2){border-bottom:1px solid var(--line) !important;}
  #experiences .experience-stage{grid-template-columns:1fr !important;margin-top:1px !important;}
  #experiences .experience-visual{min-height:360px !important;height:72vw !important;}
  #experiences .experience-detail{padding:34px 24px 38px !important;}
  #experiences .experience-detail h3{font-size:clamp(34px,9vw,48px) !important;max-width:12ch !important;}
  #experiences #experienceText{font-size:12px !important;line-height:1.75 !important;}
  #experiences .detail-item strong{font-size:20px !important;}
  #experiences .detail-item span{font-size:11px !important;line-height:1.68 !important;}
}
@media(max-width:520px){
  #experiences .experience-tabs{grid-template-columns:1fr !important;}
  #experiences .experience-tab{border-right:0 !important;border-bottom:1px solid var(--line) !important;}
  #experiences .experience-tab:last-child{border-bottom:0 !important;}
}



/* 2026 final rebuild: Experiences section + readable fixed availability note */
.below-header-note{
  position:fixed !important;
  top:88px !important;
  right:clamp(18px,4.8vw,72px) !important;
  z-index:86 !important;
  display:block !important;
  max-width:min(390px,calc(100vw - 36px)) !important;
  padding:10px 15px 11px !important;
  border:1px solid rgba(224,194,142,.22) !important;
  border-radius:999px !important;
  background:rgba(9,6,4,.58) !important;
  -webkit-backdrop-filter:blur(16px) saturate(1.08) !important;
  backdrop-filter:blur(16px) saturate(1.08) !important;
  box-shadow:0 14px 40px rgba(0,0,0,.36) !important;
  color:#f0dfc4 !important;
  font-size:10px !important;
  line-height:1.35 !important;
  letter-spacing:.035em !important;
  text-align:right !important;
  text-shadow:0 1px 12px rgba(0,0,0,.45) !important;
  opacity:.97 !important;
  pointer-events:none !important;
}
body.locked .below-header-note{display:none !important;}
.topbar.scrolled ~ .below-header-note{top:78px !important;}
.request-stack{display:contents !important;}
.request-stack .header-note{display:none !important;}

#experiences.experience-rebuilt{
  position:relative !important;
  overflow:visible !important;
  padding-top:clamp(92px,8vw,134px) !important;
  padding-bottom:clamp(98px,8vw,142px) !important;
}
#experiences.experience-rebuilt .experiences-intro,
#experiences.experience-rebuilt .experience-flow{
  width:100% !important;
  max-width:1520px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  box-sizing:border-box !important;
}
#experiences.experience-rebuilt .experiences-intro{
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.58fr) !important;
  gap:clamp(34px,5vw,84px) !important;
  align-items:end !important;
  margin-bottom:clamp(38px,4.6vw,64px) !important;
}
#experiences.experience-rebuilt .experiences-intro .display{
  max-width:780px !important;
}
#experiences.experience-rebuilt .experiences-intro .body-copy{
  max-width:410px !important;
  justify-self:end !important;
}
#experiences.experience-rebuilt .experience-flow{
  display:grid !important;
  grid-template-columns:clamp(250px,23vw,340px) minmax(0,1fr) !important;
  gap:clamp(18px,2.2vw,34px) !important;
  align-items:stretch !important;
}
#experiences.experience-rebuilt .experience-tabs{
  counter-reset:experienceStep !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-auto-rows:1fr !important;
  gap:0 !important;
  width:100% !important;
  height:100% !important;
  min-height:clamp(620px,52vw,760px) !important;
  margin:0 !important;
  border:1px solid var(--line) !important;
  outline:0 !important;
  background:linear-gradient(180deg,rgba(224,194,142,.045),rgba(255,255,255,.008)) !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}
#experiences.experience-rebuilt .experience-tab{
  counter-increment:experienceStep !important;
  position:relative !important;
  min-height:0 !important;
  width:100% !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:15px !important;
  padding:clamp(18px,2.15vw,30px) clamp(18px,2.1vw,28px) !important;
  border:0 !important;
  border-bottom:1px solid var(--line) !important;
  border-right:0 !important;
  background:transparent !important;
  color:rgba(245,238,226,.78) !important;
  text-align:left !important;
  font-size:9px !important;
  line-height:1.38 !important;
  letter-spacing:.19em !important;
  white-space:normal !important;
  box-sizing:border-box !important;
}
#experiences.experience-rebuilt .experience-tab:last-child{border-bottom:0 !important;}
#experiences.experience-rebuilt .experience-tab::before{
  content:"0" counter(experienceStep) !important;
  flex:0 0 auto !important;
  font:italic 500 clamp(24px,2.2vw,34px)/1 var(--serif) !important;
  letter-spacing:.02em !important;
  color:rgba(224,194,142,.74) !important;
  text-indent:0 !important;
}
#experiences.experience-rebuilt .experience-tab::after{
  content:"" !important;
  position:absolute !important;
  top:18px !important;
  bottom:18px !important;
  right:0 !important;
  width:2px !important;
  background:var(--gold) !important;
  transform:scaleY(0) !important;
  transform-origin:center !important;
  transition:transform .32s ease !important;
}
#experiences.experience-rebuilt .experience-tab:hover,
#experiences.experience-rebuilt .experience-tab.active{
  background:rgba(224,194,142,.105) !important;
  color:var(--cream) !important;
}
#experiences.experience-rebuilt .experience-tab.active::after{transform:scaleY(1) !important;}

#experiences.experience-rebuilt .experience-stage{
  display:grid !important;
  grid-template-columns:minmax(0,.94fr) minmax(430px,1.06fr) !important;
  width:100% !important;
  min-height:clamp(620px,52vw,760px) !important;
  height:auto !important;
  margin:0 !important;
  border:1px solid var(--line) !important;
  outline:0 !important;
  background:linear-gradient(135deg,#17110d,#090705) !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
#experiences.experience-rebuilt .experience-visual{
  position:relative !important;
  min-height:100% !important;
  height:auto !important;
  align-self:stretch !important;
  overflow:hidden !important;
  background:#100b08 !important;
}
#experiences.experience-rebuilt .experience-visual::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(90deg,rgba(8,7,5,.04),rgba(8,7,5,.24)) !important;
  pointer-events:none !important;
}
#experiences.experience-rebuilt .experience-visual img{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center center !important;
  filter:saturate(.82) contrast(1.03) brightness(.92) !important;
}
#experiences.experience-rebuilt .experience-detail{
  min-width:0 !important;
  align-self:stretch !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:clamp(44px,4.5vw,76px) clamp(40px,4.8vw,82px) !important;
  box-sizing:border-box !important;
  overflow:visible !important;
  background:radial-gradient(circle at 100% 0%,rgba(224,194,142,.07),transparent 34%),linear-gradient(145deg,#17110d,#090705) !important;
}
#experiences.experience-rebuilt .experience-detail .section-label{
  margin:0 0 clamp(16px,1.5vw,24px) !important;
  font-size:8px !important;
  line-height:1.45 !important;
  letter-spacing:.25em !important;
  color:var(--gold-light) !important;
}
#experiences.experience-rebuilt .experience-detail h3{
  max-width:14ch !important;
  margin:0 0 clamp(18px,2vw,28px) !important;
  font-size:clamp(38px,3.7vw,62px) !important;
  line-height:.96 !important;
  letter-spacing:-.026em !important;
}
#experiences.experience-rebuilt #experienceText{
  margin:0 !important;
  max-width:42rem !important;
  font-size:12px !important;
  line-height:1.78 !important;
  color:#c9bdaf !important;
}
#experiences.experience-rebuilt .detail-list{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  column-gap:clamp(22px,2.6vw,42px) !important;
  row-gap:0 !important;
  margin:clamp(28px,3vw,42px) 0 0 !important;
  padding:0 !important;
}
#experiences.experience-rebuilt .detail-item{
  min-width:0 !important;
  padding:clamp(15px,1.5vw,20px) 0 0 !important;
  margin:0 0 clamp(18px,1.7vw,24px) !important;
  border-top:1px solid rgba(224,194,142,.22) !important;
  box-sizing:border-box !important;
}
#experiences.experience-rebuilt .detail-item:nth-last-child(-n+2){margin-bottom:0 !important;}
#experiences.experience-rebuilt .detail-item strong{
  display:block !important;
  margin:0 0 7px !important;
  font-size:clamp(18px,1.38vw,22px) !important;
  line-height:1.16 !important;
}
#experiences.experience-rebuilt .detail-item span{
  display:block !important;
  max-width:100% !important;
  font-size:10.5px !important;
  line-height:1.66 !important;
  color:var(--muted) !important;
}
#experiences.experience-rebuilt .cityline{
  order:5 !important;
  margin:clamp(24px,2.6vw,36px) 0 0 !important;
  padding-top:clamp(14px,1.4vw,20px) !important;
  border-top:1px solid rgba(224,194,142,.16) !important;
  font-size:8px !important;
  line-height:1.7 !important;
  letter-spacing:.22em !important;
  color:var(--gold-light) !important;
}
#experiences.experience-rebuilt .experience-detail .arrow-link{
  order:6 !important;
  margin-top:clamp(18px,2vw,28px) !important;
}

@media(max-width:1240px){
  #experiences.experience-rebuilt .experience-flow{grid-template-columns:1fr !important;}
  #experiences.experience-rebuilt .experience-tabs{
    min-height:0 !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    grid-auto-rows:auto !important;
  }
  #experiences.experience-rebuilt .experience-tab{
    min-height:76px !important;
    border-bottom:0 !important;
    border-right:1px solid var(--line) !important;
    justify-content:center !important;
    text-align:center !important;
    padding:16px 12px !important;
  }
  #experiences.experience-rebuilt .experience-tab:last-child{border-right:0 !important;}
  #experiences.experience-rebuilt .experience-tab::after{top:auto !important;bottom:0 !important;left:18px !important;right:18px !important;width:auto !important;height:2px !important;transform:scaleX(0) !important;}
  #experiences.experience-rebuilt .experience-tab.active::after{transform:scaleX(1) !important;}
  #experiences.experience-rebuilt .experience-stage{grid-template-columns:minmax(0,.96fr) minmax(390px,1.04fr) !important;min-height:620px !important;}
}
@media(max-width:900px){
  .below-header-note{display:none !important;}
  #experiences.experience-rebuilt{padding-top:86px !important;padding-bottom:92px !important;}
  #experiences.experience-rebuilt .experiences-intro{grid-template-columns:1fr !important;gap:22px !important;margin-bottom:34px !important;}
  #experiences.experience-rebuilt .experiences-intro .body-copy{justify-self:start !important;max-width:34rem !important;}
  #experiences.experience-rebuilt .experience-tabs{grid-template-columns:1fr 1fr !important;}
  #experiences.experience-rebuilt .experience-tab{border-bottom:1px solid var(--line) !important;min-height:72px !important;}
  #experiences.experience-rebuilt .experience-tab:nth-child(2){border-right:0 !important;}
  #experiences.experience-rebuilt .experience-tab:nth-child(3),
  #experiences.experience-rebuilt .experience-tab:nth-child(4){border-bottom:0 !important;}
  #experiences.experience-rebuilt .experience-stage{grid-template-columns:1fr !important;min-height:0 !important;}
  #experiences.experience-rebuilt .experience-visual{height:72vw !important;min-height:360px !important;}
  #experiences.experience-rebuilt .experience-detail{padding:36px 24px 42px !important;}
  #experiences.experience-rebuilt .detail-list{grid-template-columns:1fr !important;margin-top:26px !important;}
  #experiences.experience-rebuilt .detail-item:nth-last-child(-n+2){margin-bottom:18px !important;}
  #experiences.experience-rebuilt .detail-item:last-child{margin-bottom:0 !important;}
}
@media(max-width:520px){
  #experiences.experience-rebuilt .experience-tabs{grid-template-columns:1fr !important;}
  #experiences.experience-rebuilt .experience-tab{border-right:0 !important;border-bottom:1px solid var(--line) !important;justify-content:flex-start !important;text-align:left !important;}
  #experiences.experience-rebuilt .experience-tab:nth-child(3){border-bottom:1px solid var(--line) !important;}
  #experiences.experience-rebuilt .experience-tab:last-child{border-bottom:0 !important;}
}



/* Final: keep the availability note fixed, blurred, and without any visible outline */
.below-header-note{
  position:fixed !important;
  top:88px !important;
  right:clamp(18px,4.8vw,72px) !important;
  z-index:86 !important;
  max-width:min(390px,calc(100vw - 36px)) !important;
  padding:9px 14px 10px !important;
  border:0 !important;
  outline:0 !important;
  border-radius:999px !important;
  background:rgba(9,6,4,.58) !important;
  -webkit-backdrop-filter:blur(16px) saturate(1.08) !important;
  backdrop-filter:blur(16px) saturate(1.08) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.32) !important;
  color:#f0dfc4 !important;
  font-size:10px !important;
  line-height:1.35 !important;
  letter-spacing:.035em !important;
  text-align:right !important;
  text-shadow:0 1px 12px rgba(0,0,0,.45) !important;
  opacity:.97 !important;
  pointer-events:none !important;
}
body.locked .below-header-note{display:none !important;}
.topbar.scrolled ~ .below-header-note{top:78px !important;}

/* Desktop fit pass: tighter geometry so all copy sits safely inside the experience containers */
@media(min-width:901px){
  #experiences.experience-rebuilt{
    padding-top:clamp(60px,5.8vw,92px) !important;
    padding-bottom:clamp(64px,6vw,98px) !important;
  }
  #experiences.experience-rebuilt .experiences-intro{
    margin-bottom:clamp(26px,3.2vw,44px) !important;
    gap:clamp(30px,4vw,72px) !important;
  }
  #experiences.experience-rebuilt .experiences-intro .display{
    font-size:clamp(44px,5.2vw,78px) !important;
    line-height:.9 !important;
    max-width:760px !important;
  }
  #experiences.experience-rebuilt .experiences-intro .body-copy{
    font-size:11px !important;
    line-height:1.68 !important;
    max-width:390px !important;
  }
  #experiences.experience-rebuilt .experience-flow{
    grid-template-columns:clamp(236px,21vw,316px) minmax(0,1fr) !important;
    gap:clamp(16px,2vw,30px) !important;
  }
  #experiences.experience-rebuilt .experience-tabs,
  #experiences.experience-rebuilt .experience-stage{
    min-height:clamp(540px,calc(100vh - 340px),680px) !important;
  }
  #experiences.experience-rebuilt .experience-tabs{
    height:auto !important;
  }
  #experiences.experience-rebuilt .experience-tab{
    padding:clamp(16px,1.7vw,24px) clamp(16px,1.8vw,24px) !important;
    gap:12px !important;
    font-size:8.5px !important;
    line-height:1.34 !important;
    letter-spacing:.16em !important;
    overflow-wrap:anywhere !important;
  }
  #experiences.experience-rebuilt .experience-tab::before{
    font-size:clamp(22px,1.9vw,30px) !important;
  }
  #experiences.experience-rebuilt .experience-stage{
    grid-template-columns:minmax(0,.88fr) minmax(410px,1.12fr) !important;
    height:auto !important;
  }
  #experiences.experience-rebuilt .experience-visual{
    min-height:inherit !important;
  }
  #experiences.experience-rebuilt .experience-detail{
    justify-content:center !important;
    padding:clamp(32px,3.5vw,58px) clamp(34px,4.1vw,70px) !important;
    overflow:visible !important;
  }
  #experiences.experience-rebuilt .experience-detail .section-label{
    margin-bottom:clamp(12px,1.2vw,18px) !important;
  }
  #experiences.experience-rebuilt .experience-detail h3{
    max-width:15ch !important;
    margin-bottom:clamp(12px,1.5vw,22px) !important;
    font-size:clamp(32px,3.2vw,54px) !important;
    line-height:.98 !important;
  }
  #experiences.experience-rebuilt #experienceText{
    max-width:42rem !important;
    font-size:11px !important;
    line-height:1.64 !important;
  }
  #experiences.experience-rebuilt .detail-list{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    column-gap:clamp(18px,2.1vw,34px) !important;
    margin:clamp(18px,2.2vw,30px) 0 0 !important;
  }
  #experiences.experience-rebuilt .detail-item{
    padding-top:clamp(10px,1.05vw,15px) !important;
    margin-bottom:clamp(12px,1.35vw,20px) !important;
  }
  #experiences.experience-rebuilt .detail-item strong{
    margin-bottom:5px !important;
    font-size:clamp(16px,1.2vw,20px) !important;
    line-height:1.15 !important;
  }
  #experiences.experience-rebuilt .detail-item span{
    font-size:clamp(9px,.76vw,10px) !important;
    line-height:1.52 !important;
  }
  #experiences.experience-rebuilt .cityline{
    margin-top:clamp(12px,1.5vw,24px) !important;
    padding-top:clamp(9px,1vw,15px) !important;
    font-size:7.7px !important;
    line-height:1.5 !important;
  }
  #experiences.experience-rebuilt .experience-detail .arrow-link{
    margin-top:clamp(12px,1.6vw,22px) !important;
  }
}

@media(min-width:901px) and (max-height:860px){
  #experiences.experience-rebuilt{
    padding-top:48px !important;
    padding-bottom:54px !important;
  }
  #experiences.experience-rebuilt .experiences-intro{
    margin-bottom:22px !important;
  }
  #experiences.experience-rebuilt .experiences-intro .display{
    font-size:clamp(40px,4.8vw,66px) !important;
  }
  #experiences.experience-rebuilt .experiences-intro .body-copy{
    font-size:10.5px !important;
    line-height:1.6 !important;
  }
  #experiences.experience-rebuilt .experience-tabs,
  #experiences.experience-rebuilt .experience-stage{
    min-height:540px !important;
  }
  #experiences.experience-rebuilt .experience-detail{
    padding:30px 42px !important;
  }
  #experiences.experience-rebuilt .experience-detail h3{
    font-size:clamp(30px,3vw,46px) !important;
    margin-bottom:12px !important;
  }
  #experiences.experience-rebuilt #experienceText{
    font-size:10.5px !important;
    line-height:1.56 !important;
  }
  #experiences.experience-rebuilt .detail-list{
    margin-top:16px !important;
    column-gap:22px !important;
  }
  #experiences.experience-rebuilt .detail-item{
    padding-top:10px !important;
    margin-bottom:12px !important;
  }
  #experiences.experience-rebuilt .detail-item strong{
    font-size:16px !important;
  }
  #experiences.experience-rebuilt .detail-item span{
    font-size:9px !important;
    line-height:1.48 !important;
  }
  #experiences.experience-rebuilt .cityline{
    margin-top:10px !important;
    padding-top:9px !important;
  }
}

@media(max-width:900px){
  .below-header-note{display:none !important;}
}



/* Match the floating Montréal/worldwide blur treatment on the music control, without an outline */
.sound-control{
  padding:8px 13px 8px 8px !important;
  border:0 !important;
  outline:0 !important;
  border-radius:999px !important;
  background:rgba(9,6,4,.58) !important;
  -webkit-backdrop-filter:blur(16px) saturate(1.08) !important;
  backdrop-filter:blur(16px) saturate(1.08) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.32) !important;
}
.sound-btn{
  border:0 !important;
  outline:0 !important;
  background:rgba(255,255,255,.045) !important;
  box-shadow:none !important;
}
.sound-btn:hover{
  border:0 !important;
  background:rgba(224,194,142,.12) !important;
}
.sound-label{
  color:#f0dfc4 !important;
  text-shadow:0 1px 12px rgba(0,0,0,.45) !important;
}
.sound-state{
  color:rgba(240,223,196,.62) !important;
}
.sound-btn.is-playing + .sound-copy .sound-state{
  color:var(--gold-light) !important;
}
@media(max-width:620px){
  .sound-control{padding:7px !important;}
}



  /* Private request section revamp */
  .private-request-revamp{
    position:relative;
    overflow:hidden;
    padding-top:clamp(110px,10vw,160px);
    padding-bottom:clamp(110px,10vw,160px);
    background-position:center;
    background-size:cover;
    background-attachment:fixed;
  }
  .private-request-revamp::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
      radial-gradient(circle at 22% 15%,rgba(224,194,142,.12),transparent 34%),
      linear-gradient(90deg,rgba(8,7,5,.92),rgba(8,7,5,.74) 52%,rgba(8,7,5,.94));
  }
  .request-frame{
    position:relative;
    z-index:1;
    width:min(1240px,100%);
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(320px,.86fr) minmax(520px,1.14fr);
    gap:clamp(38px,5.8vw,86px);
    align-items:start;
  }
  .request-intro-panel{
    position:sticky;
    top:126px;
    align-self:start;
  }
  .request-intro-panel .display{
    max-width:9.4ch;
    font-size:clamp(54px,6.3vw,92px);
    line-height:.9;
    letter-spacing:-.035em;
  }
  .request-intro-panel .body-copy{
    max-width:34rem;
    margin-top:24px;
    color:#c8baaa;
    font-size:12px;
    line-height:1.88;
  }
  .request-process{
    display:grid;
    gap:10px;
    margin-top:34px;
  }
  .request-step{
    display:grid;
    grid-template-columns:42px 1fr;
    gap:15px;
    padding:17px 18px;
    background:rgba(14,10,7,.54);
    border:1px solid rgba(224,194,142,.13);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }
  .request-step span{
    color:var(--gold-light);
    font-size:9px;
    letter-spacing:.24em;
    padding-top:3px;
  }
  .request-step strong{
    display:block;
    font:500 20px/1.1 var(--serif);
    color:#f0e3cf;
    margin-bottom:6px;
  }
  .request-step p{
    margin:0;
    color:#aa9d8f;
    font-size:10px;
    line-height:1.62;
  }
  .request-discretion-note{
    display:inline-flex;
    margin-top:18px;
    padding:11px 15px;
    border-radius:999px;
    background:rgba(8,7,5,.46);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    color:#d9c9b6;
    font-size:9px;
    letter-spacing:.14em;
    text-transform:uppercase;
  }
  .request-form-panel{
    position:relative;
    overflow:hidden;
    padding:clamp(32px,4vw,58px) !important;
    border:1px solid rgba(224,194,142,.22) !important;
    background:linear-gradient(145deg,rgba(21,15,11,.86),rgba(8,7,5,.72)) !important;
    box-shadow:0 32px 90px rgba(0,0,0,.34);
    backdrop-filter:blur(22px) !important;
    -webkit-backdrop-filter:blur(22px) !important;
  }
  .request-form-panel::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(135deg,rgba(224,194,142,.10),transparent 38%);
    opacity:.72;
  }
  .request-form-panel > *{
    position:relative;
    z-index:1;
  }
  .form-heading-row{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
    padding-bottom:24px;
    border-bottom:1px solid rgba(224,194,142,.18);
    margin-bottom:24px;
  }
  .form-kicker{
    margin-bottom:10px;
    color:var(--gold-light);
    font-size:8px;
    letter-spacing:.28em;
    text-transform:uppercase;
  }
  .request-form-panel h3{
    font:500 clamp(42px,4.2vw,60px)/.94 var(--serif) !important;
    margin:0 !important;
  }
  .form-time{
    flex:0 0 auto;
    margin-top:4px;
    padding:9px 12px;
    border-radius:999px;
    background:rgba(224,194,142,.10);
    color:#dfceb5;
    font-size:8px;
    letter-spacing:.18em;
    text-transform:uppercase;
    white-space:nowrap;
  }
  .request-form-panel .form-intro{
    max-width:45rem;
    color:#b9ab9b;
    font-size:11px;
    line-height:1.85;
    margin:0 0 28px !important;
  }
  .request-form-panel .form-grid{
    gap:18px 24px;
  }
  .request-form-panel .field{
    gap:9px;
  }
  .request-form-panel .field label{
    color:#d8be8a;
    font-size:8px;
    letter-spacing:.22em;
  }
  .request-form-panel .field input,
  .request-form-panel .field select,
  .request-form-panel .field textarea{
    padding:14px 0;
    border-bottom-color:rgba(224,194,142,.28);
    font-size:13px;
  }
  .request-form-panel .field textarea{
    min-height:150px;
  }
  .request-form-panel .message-field{
    margin-top:4px;
  }
  .request-form-panel .check{
    margin-top:3px;
    align-items:flex-start;
    line-height:1.5;
  }
  .request-form-panel .check input{
    margin-top:1px;
    accent-color:#d8b56c;
  }
  .request-form-panel .submit{
    margin-top:8px;
    padding:18px 20px;
    border:0;
    background:linear-gradient(135deg,#e0c28e,#b78f4c);
    color:#090705;
    box-shadow:0 16px 46px rgba(170,128,63,.16);
  }
  .request-form-panel .submit:hover{
    color:#f5eadc;
    background:rgba(224,194,142,.08);
    box-shadow:inset 0 0 0 1px rgba(224,194,142,.55);
  }
  @media (max-width:1050px){
    .private-request-revamp{
      background-attachment:scroll;
      padding-top:92px;
      padding-bottom:92px;
    }
    .request-frame{
      grid-template-columns:1fr;
      gap:42px;
    }
    .request-intro-panel{
      position:relative;
      top:auto;
    }
    .request-intro-panel .display{
      max-width:12ch;
    }
    .request-process{
      grid-template-columns:1fr 1fr;
    }
  }
  @media (max-width:700px){
    .private-request-revamp{
      padding-top:76px;
      padding-bottom:76px;
    }
    .request-intro-panel .display{
      font-size:clamp(48px,15vw,76px);
    }
    .request-process{
      grid-template-columns:1fr;
    }
    .request-step{
      grid-template-columns:36px 1fr;
      padding:15px;
    }
    .form-heading-row{
      display:block;
    }
    .form-time{
      display:inline-flex;
      margin-top:18px;
    }
    .request-form-panel{
      padding:28px 22px !important;
    }
    .request-form-panel .form-grid{
      grid-template-columns:1fr !important;
      gap:18px;
    }
    .request-form-panel .field.full,
    .request-form-panel .check{
      grid-column:auto !important;
    }
  }



  /* Final private request: one-screen desktop flow */
  .private-request-revamp{
    scroll-margin-top:82px;
  }
  @media (min-width:1051px){
    .private-request-revamp{
      min-height:100svh !important;
      padding:calc(82px + 18px) clamp(28px,5vw,74px) 34px !important;
      display:flex;
      align-items:center;
      background-attachment:fixed;
    }
    .private-request-revamp::before{
      background:
        radial-gradient(circle at 18% 18%,rgba(224,194,142,.12),transparent 34%),
        linear-gradient(90deg,rgba(8,7,5,.94),rgba(12,9,7,.78) 52%,rgba(8,7,5,.95));
    }
    .request-frame{
      width:min(1420px,100%) !important;
      display:grid !important;
      grid-template-columns:minmax(360px,.83fr) minmax(610px,1.17fr) !important;
      gap:clamp(34px,4.4vw,72px) !important;
      align-items:center !important;
    }
    .request-intro-panel{
      position:relative !important;
      top:auto !important;
      align-self:center !important;
    }
    .request-intro-panel .section-label{
      margin-bottom:15px !important;
      font-size:8px !important;
      letter-spacing:.42em !important;
    }
    .request-intro-panel .display{
      max-width:10.7ch !important;
      font-size:clamp(50px,5.05vw,74px) !important;
      line-height:.9 !important;
      letter-spacing:-.045em !important;
    }
    .request-intro-panel .body-copy{
      max-width:32rem !important;
      margin-top:18px !important;
      font-size:11px !important;
      line-height:1.66 !important;
      color:#d2c4b4 !important;
    }
    .request-process{
      margin-top:20px !important;
      gap:0 !important;
      border-top:1px solid rgba(224,194,142,.22);
      border-bottom:1px solid rgba(224,194,142,.22);
      background:rgba(8,7,5,.22);
      backdrop-filter:blur(16px);
      -webkit-backdrop-filter:blur(16px);
    }
    .request-step{
      display:grid !important;
      grid-template-columns:34px 1fr !important;
      gap:13px !important;
      padding:12px 0 !important;
      border:0 !important;
      border-bottom:1px solid rgba(224,194,142,.13) !important;
      background:transparent !important;
      backdrop-filter:none !important;
      -webkit-backdrop-filter:none !important;
    }
    .request-step:last-child{border-bottom:0 !important;}
    .request-step span{
      font-family:var(--serif);
      font-size:22px !important;
      line-height:1 !important;
      letter-spacing:0 !important;
      color:#e2c58c !important;
      padding-top:1px !important;
    }
    .request-step strong{
      font-size:18px !important;
      line-height:1.08 !important;
      margin-bottom:4px !important;
    }
    .request-step p{
      font-size:9.6px !important;
      line-height:1.42 !important;
      color:#b5aa9d !important;
    }
    .request-discretion-note{
      display:block !important;
      margin-top:14px !important;
      padding:0 0 0 14px !important;
      border-left:1px solid rgba(224,194,142,.5);
      border-radius:0 !important;
      background:transparent !important;
      backdrop-filter:none !important;
      -webkit-backdrop-filter:none !important;
      color:#dacbb8 !important;
      font:italic 16px/1.35 var(--serif) !important;
      letter-spacing:0 !important;
      text-transform:none !important;
    }

    .request-form-panel{
      align-self:center !important;
      padding:clamp(22px,2.35vw,34px) !important;
      max-height:calc(100svh - 128px) !important;
      overflow:visible !important;
      background:linear-gradient(145deg,rgba(21,15,11,.84),rgba(8,7,5,.70)) !important;
      box-shadow:0 24px 80px rgba(0,0,0,.32) !important;
    }
    .form-heading-row{
      padding-bottom:13px !important;
      margin-bottom:12px !important;
      gap:16px !important;
    }
    .form-kicker{
      margin-bottom:7px !important;
      font-size:7.5px !important;
      letter-spacing:.26em !important;
    }
    .request-form-panel h3{
      font-size:clamp(36px,3.1vw,48px) !important;
      line-height:.95 !important;
    }
    .form-time{
      padding:7px 10px !important;
      font-size:7px !important;
      letter-spacing:.16em !important;
    }
    .request-form-panel .form-intro{
      margin:0 0 12px !important;
      font-size:10px !important;
      line-height:1.48 !important;
      max-width:42rem !important;
    }
    .request-form-panel .form-grid{
      gap:10px 22px !important;
    }
    .request-form-panel .field{
      gap:5px !important;
    }
    .request-form-panel .field label{
      font-size:7px !important;
      letter-spacing:.21em !important;
    }
    .request-form-panel .field input,
    .request-form-panel .field select,
    .request-form-panel .field textarea{
      padding:8px 0 !important;
      font-size:12px !important;
    }
    .request-form-panel .field textarea{
      min-height:84px !important;
      max-height:108px !important;
      resize:vertical !important;
    }
    .request-form-panel .message-field{
      margin-top:0 !important;
    }
    .request-form-panel .check{
      margin-top:0 !important;
      gap:8px !important;
      font-size:9.5px !important;
      line-height:1.32 !important;
    }
    .request-form-panel .submit{
      margin-top:4px !important;
      padding:13px 16px !important;
      font-size:7.5px !important;
      letter-spacing:.26em !important;
    }
  }

  @media (min-width:1051px) and (max-height:820px){
    .private-request-revamp{
      padding-top:92px !important;
      padding-bottom:24px !important;
    }
    .request-intro-panel .display{
      font-size:clamp(46px,4.45vw,64px) !important;
      max-width:11.2ch !important;
    }
    .request-intro-panel .body-copy{
      font-size:10px !important;
      line-height:1.52 !important;
      margin-top:14px !important;
    }
    .request-process{margin-top:16px !important;}
    .request-step{padding:9px 0 !important;}
    .request-step span{font-size:20px !important;}
    .request-step strong{font-size:16px !important;}
    .request-step p{font-size:9px !important;line-height:1.35 !important;}
    .request-discretion-note{font-size:14px !important;margin-top:11px !important;}
    .request-form-panel{max-height:calc(100svh - 110px) !important;padding:20px 26px !important;}
    .form-heading-row{padding-bottom:10px !important;margin-bottom:10px !important;}
    .request-form-panel h3{font-size:38px !important;}
    .request-form-panel .form-intro{font-size:9.5px !important;line-height:1.42 !important;margin-bottom:10px !important;}
    .request-form-panel .form-grid{gap:8px 20px !important;}
    .request-form-panel .field input,
    .request-form-panel .field select,
    .request-form-panel .field textarea{padding:7px 0 !important;}
    .request-form-panel .field textarea{min-height:72px !important;max-height:92px !important;}
    .request-form-panel .submit{padding:11px 14px !important;}
  }

  @media (min-width:1051px) and (max-width:1220px){
    .request-frame{
      grid-template-columns:minmax(330px,.76fr) minmax(560px,1.24fr) !important;
      gap:34px !important;
    }
    .request-intro-panel .display{font-size:clamp(46px,4.6vw,62px) !important;}
  }



/* Final request polish: larger readable form, mandatory flow, compact one-page desktop */
@media (min-width:1051px){
  .private-request-revamp{
    min-height:100svh !important;
    padding:calc(82px + 18px) clamp(28px,4.6vw,66px) 30px !important;
    display:flex !important;
    align-items:center !important;
  }
  .private-request-revamp .request-frame{
    width:min(1450px,100%) !important;
    grid-template-columns:minmax(390px,.9fr) minmax(620px,1.1fr) !important;
    gap:clamp(32px,4vw,58px) !important;
    align-items:center !important;
  }
  .private-request-revamp .request-intro-panel{
    align-self:center !important;
    display:flex !important;
    flex-direction:column !important;
  }
  .private-request-revamp .request-intro-panel .display{
    font-size:clamp(52px,4.85vw,76px) !important;
    line-height:.9 !important;
    max-width:10.8ch !important;
  }
  .private-request-revamp .request-intro-panel .body-copy{
    font-size:11.6px !important;
    line-height:1.62 !important;
    margin-top:18px !important;
    max-width:34rem !important;
  }
  .private-request-revamp .request-process{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    margin-top:20px !important;
    border:0 !important;
    background:transparent !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  .private-request-revamp .request-step{
    grid-template-columns:34px minmax(0,1fr) !important;
    gap:12px !important;
    padding:13px 14px !important;
    min-height:112px !important;
    border:1px solid rgba(224,194,142,.15) !important;
    background:rgba(9,7,5,.34) !important;
    backdrop-filter:blur(14px) !important;
    -webkit-backdrop-filter:blur(14px) !important;
  }
  .private-request-revamp .request-step span{
    font-size:22px !important;
    line-height:1 !important;
  }
  .private-request-revamp .request-step strong{
    font-size:18.5px !important;
    line-height:1.08 !important;
    margin-bottom:5px !important;
  }
  .private-request-revamp .request-step p{
    font-size:10.4px !important;
    line-height:1.42 !important;
  }
  .private-request-revamp .request-discretion-note{
    font-size:15.5px !important;
    line-height:1.34 !important;
    margin-top:14px !important;
    max-width:45rem !important;
  }

  .private-request-revamp .request-form-panel{
    padding:clamp(24px,2.45vw,36px) !important;
    max-height:calc(100svh - 122px) !important;
    overflow:visible !important;
  }
  .private-request-revamp .form-heading-row{
    padding-bottom:14px !important;
    margin-bottom:13px !important;
  }
  .private-request-revamp .form-kicker{
    font-size:8px !important;
  }
  .private-request-revamp .request-form-panel h3{
    font-size:clamp(40px,3.3vw,52px) !important;
  }
  .private-request-revamp .form-time{
    font-size:7.6px !important;
    padding:8px 11px !important;
  }
  .private-request-revamp .request-form-panel .form-intro{
    font-size:10.8px !important;
    line-height:1.5 !important;
    margin-bottom:13px !important;
  }
  .private-request-revamp .request-form-panel .form-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:11px 24px !important;
  }
  .private-request-revamp .request-form-panel .field.full,
  .private-request-revamp .request-form-panel .check{
    grid-column:1/-1 !important;
  }
  .private-request-revamp .request-form-panel .field{
    gap:6px !important;
  }
  .private-request-revamp .request-form-panel .field label{
    font-size:7.8px !important;
    letter-spacing:.22em !important;
  }
  .private-request-revamp .request-form-panel .field label::after{
    content:" *";
    color:#e0c28e;
    letter-spacing:0;
  }
  .private-request-revamp .request-form-panel .check span::after{
    content:"";
  }
  .private-request-revamp .request-form-panel .field input,
  .private-request-revamp .request-form-panel .field select,
  .private-request-revamp .request-form-panel .field textarea{
    padding:8px 0 !important;
    font-size:13.2px !important;
    line-height:1.45 !important;
  }
  .private-request-revamp .request-form-panel .message-field textarea{
    min-height:82px !important;
    max-height:104px !important;
  }
  .private-request-revamp .multiple-experience-field[hidden]{
    display:none !important;
  }
  .private-request-revamp .multiple-experience-field{
    margin-top:-2px !important;
  }
  .private-request-revamp .request-form-panel .check{
    font-size:10.5px !important;
    line-height:1.35 !important;
    margin-top:0 !important;
  }
  .private-request-revamp .request-form-panel .submit{
    padding:13px 16px !important;
    font-size:8px !important;
    letter-spacing:.25em !important;
  }
}
@media (min-width:1051px) and (max-height:820px){
  .private-request-revamp .request-frame{
    grid-template-columns:minmax(380px,.86fr) minmax(620px,1.14fr) !important;
    gap:32px !important;
  }
  .private-request-revamp .request-intro-panel .display{
    font-size:clamp(46px,4.25vw,64px) !important;
  }
  .private-request-revamp .request-intro-panel .body-copy{
    font-size:10.8px !important;
    line-height:1.48 !important;
    margin-top:13px !important;
  }
  .private-request-revamp .request-process{gap:8px !important;margin-top:15px !important;}
  .private-request-revamp .request-step{
    min-height:96px !important;
    padding:10px 12px !important;
  }
  .private-request-revamp .request-step span{font-size:19px !important;}
  .private-request-revamp .request-step strong{font-size:16px !important;}
  .private-request-revamp .request-step p{font-size:9.5px !important;line-height:1.34 !important;}
  .private-request-revamp .request-discretion-note{font-size:13.8px !important;margin-top:10px !important;}
  .private-request-revamp .request-form-panel{padding:20px 26px !important;}
  .private-request-revamp .form-heading-row{padding-bottom:10px !important;margin-bottom:10px !important;}
  .private-request-revamp .request-form-panel h3{font-size:38px !important;}
  .private-request-revamp .request-form-panel .form-intro{font-size:10px !important;line-height:1.38 !important;margin-bottom:10px !important;}
  .private-request-revamp .request-form-panel .form-grid{gap:8px 20px !important;}
  .private-request-revamp .request-form-panel .field input,
  .private-request-revamp .request-form-panel .field select,
  .private-request-revamp .request-form-panel .field textarea{padding:6px 0 !important;font-size:12.4px !important;}
  .private-request-revamp .request-form-panel .message-field textarea{min-height:68px !important;max-height:86px !important;}
  .private-request-revamp .request-form-panel .submit{padding:10px 14px !important;}
}
@media (max-width:1050px){
  .private-request-revamp .request-form-panel .field label::after{content:" *";color:#e0c28e;letter-spacing:0;}
  .private-request-revamp .multiple-experience-field[hidden]{display:none !important;}
}



/* Award-level entrance concept: the site becomes a threshold, not a page. */
.entry{
  background:
    radial-gradient(circle at 50% 48%, rgba(232,189,122,.18), transparent 22%),
    radial-gradient(circle at 16% 84%, rgba(150,82,39,.18), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(200,137,76,.12), transparent 28%),
    linear-gradient(115deg,#030302 0%,#080604 34%,#120d09 66%,#050403 100%) !important;
}
.entry::before{
  inset:18px !important;
  border-color:rgba(224,194,142,.16) !important;
  box-shadow:inset 0 0 90px rgba(224,194,142,.035), 0 0 0 1px rgba(255,255,255,.018) !important;
}
.entry::after{
  background:
    radial-gradient(ellipse at 50% 50%, transparent 0 28%, rgba(0,0,0,.34) 72%, rgba(0,0,0,.72) 100%),
    linear-gradient(90deg, rgba(0,0,0,.52), transparent 35%, transparent 65%, rgba(0,0,0,.52)) !important;
}
.entry-portal-layout{
  display:block !important;
  width:100% !important;
  height:100vh !important;
  min-height:720px !important;
  padding:0 !important;
}
.threshold-experience{
  position:relative;
  width:100%;
  height:100%;
  min-height:720px;
  isolation:isolate;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(260px, .82fr) minmax(360px, 520px) minmax(260px, .82fr);
  align-items:center;
  gap:clamp(24px,4vw,72px);
  padding:106px clamp(46px,6vw,96px) 68px;
}
.threshold-aura{
  position:absolute;
  border-radius:999px;
  pointer-events:none;
  filter:blur(34px);
  opacity:.72;
  z-index:-2;
}
.threshold-aura-one{
  width:42vw;
  height:42vw;
  max-width:620px;
  max-height:620px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle,rgba(224,194,142,.2),rgba(168,104,52,.08) 44%,transparent 72%);
  animation:thresholdAura 8s ease-in-out infinite;
}
.threshold-aura-two{
  width:34vw;
  height:34vw;
  right:-12vw;
  top:2vh;
  background:radial-gradient(circle,rgba(124,67,36,.32),transparent 70%);
}
.threshold-floor{
  position:absolute;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  width:min(72vw,980px);
  height:24vh;
  background:
    linear-gradient(90deg,transparent,rgba(224,194,142,.16),transparent),
    radial-gradient(ellipse at center,rgba(224,194,142,.2) 0%,rgba(115,70,35,.11) 40%,transparent 72%);
  filter:blur(20px);
  opacity:.78;
  z-index:-1;
}
.threshold-curtain{
  position:absolute;
  top:82px;
  bottom:0;
  width:31vw;
  pointer-events:none;
  opacity:.55;
  z-index:-1;
  background:
    repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 18px),
    linear-gradient(90deg,rgba(69,38,22,.62),transparent);
  filter:blur(.2px);
}
.threshold-curtain.left{left:0;transform:skewX(-4deg);transform-origin:left top}
.threshold-curtain.right{right:0;transform:scaleX(-1) skewX(-4deg);transform-origin:right top}

.threshold-note{
  position:relative;
  z-index:3;
  max-width:430px;
}
.threshold-note-left{
  align-self:center;
  padding-left:clamp(0px,1vw,18px);
}
.threshold-note-right{
  justify-self:end;
  align-self:center;
  max-width:360px;
  padding:28px 0 28px 28px;
  border-left:1px solid rgba(224,194,142,.18);
}
.threshold-small{
  display:block;
  font-size:9px;
  line-height:1.4;
  letter-spacing:.42em;
  text-transform:uppercase;
  color:#dbbd84;
  margin-bottom:22px;
}
.threshold-title{
  margin:0;
  font:500 clamp(76px,7.4vw,142px)/.78 var(--serif);
  letter-spacing:-.055em;
  color:#f4eadf;
  text-shadow:0 18px 45px rgba(0,0,0,.44);
}
.threshold-copy{
  max-width:29rem;
  margin:30px 0 0;
  color:#d9cbbb;
  font-size:13px;
  line-height:1.9;
  letter-spacing:.025em;
}
.threshold-prompt{
  margin:0 0 28px;
  color:#f1e5d4;
  font:italic 500 clamp(28px,2.7vw,45px)/1.06 var(--serif);
}
.threshold-details{
  display:grid;
  gap:1px;
  background:rgba(224,194,142,.16);
}
.threshold-details span{
  display:block;
  padding:15px 18px;
  background:rgba(6,5,4,.46);
  backdrop-filter:blur(12px);
  color:#dfc28d;
  font-size:8px;
  letter-spacing:.32em;
  text-transform:uppercase;
}
.threshold-door{
  position:relative;
  z-index:2;
  justify-self:center;
  width:min(29vw,430px);
  min-width:320px;
  height:min(72vh,640px);
  min-height:520px;
  display:grid;
  place-items:center;
  perspective:1200px;
}
.door-glow{
  position:absolute;
  inset:10% 13% 4%;
  border-radius:52% 52% 2% 2%/26% 26% 2% 2%;
  background:
    radial-gradient(circle at 50% 28%,rgba(255,236,190,.46),rgba(222,163,89,.2) 35%,rgba(74,40,19,.14) 62%,transparent 76%),
    linear-gradient(180deg,rgba(224,194,142,.12),transparent 70%);
  filter:blur(18px);
  animation:thresholdGlow 7s ease-in-out infinite;
}
.door-arch{
  position:absolute;
  inset:0;
  border-radius:52% 52% 2% 2%/28% 28% 2% 2%;
  background:
    linear-gradient(90deg,rgba(255,255,255,.045),transparent 14%,transparent 86%,rgba(255,255,255,.04)),
    linear-gradient(118deg,rgba(39,24,15,.92),rgba(10,7,5,.92) 44%,rgba(31,18,11,.96));
  border:1px solid rgba(224,194,142,.26);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.035),
    inset 0 0 80px rgba(0,0,0,.62),
    0 44px 90px rgba(0,0,0,.52);
  overflow:hidden;
}
.door-arch::before{
  content:"";
  position:absolute;
  inset:5%;
  border-radius:50% 50% 1% 1%/26% 26% 1% 1%;
  border:1px solid rgba(224,194,142,.14);
  box-shadow:inset 0 0 36px rgba(224,194,142,.05);
}
.door-arch::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,transparent 0 48.9%,rgba(224,194,142,.32) 49.5% 50.5%,transparent 51.1% 100%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 56px);
  opacity:.5;
}
.door-slit{
  position:absolute;
  top:9%;
  bottom:8%;
  left:50%;
  width:4px;
  transform:translateX(-50%);
  background:linear-gradient(180deg,transparent,rgba(255,234,188,.92) 18%,rgba(224,194,142,.42) 58%,transparent);
  box-shadow:0 0 32px rgba(224,194,142,.62),0 0 72px rgba(224,194,142,.24);
  animation:thresholdSlit 5.8s ease-in-out infinite;
}
.door-handle{
  position:absolute;
  right:27%;
  top:52%;
  width:14px;
  height:14px;
  border-radius:50%;
  background:#d7b777;
  box-shadow:0 0 0 6px rgba(215,183,119,.08),0 0 28px rgba(224,194,142,.36);
}
.door-shadow{
  position:absolute;
  bottom:-6%;
  width:74%;
  height:9%;
  border-radius:50%;
  background:rgba(0,0,0,.56);
  filter:blur(18px);
}
.door-vertical{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%) rotate(-90deg);
  font-size:8px;
  letter-spacing:1.15em;
  text-indent:1.15em;
  color:rgba(244,234,223,.74);
  text-transform:uppercase;
  z-index:4;
  pointer-events:none;
}
.threshold-enter{
  position:absolute !important;
  bottom:13% !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  z-index:5 !important;
  min-width:210px !important;
  background:rgba(7,5,4,.38) !important;
  box-shadow:0 18px 50px rgba(0,0,0,.38) !important;
}
.threshold-enter:hover{
  transform:translateX(-50%) translateY(-2px) !important;
}
.threshold-bottom{
  position:absolute;
  left:clamp(44px,6vw,96px);
  right:clamp(44px,6vw,96px);
  bottom:32px;
  z-index:5;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.threshold-key{
  width:44px !important;
  margin:0 !important;
  opacity:.86;
}
.threshold-hint{
  max-width:none;
  margin-right:auto;
}
.threshold-location{
  margin:0 !important;
  justify-content:flex-end;
  background:rgba(8,7,5,.32);
  backdrop-filter:blur(12px);
  padding:10px 13px;
  border-radius:999px;
}

.entry.is-opening .threshold-door{
  animation:thresholdEnter .76s cubic-bezier(.2,.8,.2,1) forwards;
}
.entry.is-opening .threshold-note,
.entry.is-opening .threshold-bottom{
  animation:entryCopyOut .72s ease forwards;
}
.entry.is-opening .door-slit{
  width:42%;
  opacity:.85;
}

@keyframes thresholdAura{
  0%,100%{opacity:.68;transform:translate(-50%,-50%) scale(.96)}
  50%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}
}
@keyframes thresholdGlow{
  0%,100%{opacity:.7;transform:scale(.98)}
  50%{opacity:1;transform:scale(1.04)}
}
@keyframes thresholdSlit{
  0%,100%{opacity:.56;filter:blur(.2px)}
  50%{opacity:1;filter:blur(0)}
}
@keyframes thresholdEnter{
  to{transform:scale(1.18);opacity:.18;filter:blur(5px)}
}

@media(max-width:1100px){
  .threshold-experience{
    grid-template-columns:1fr minmax(310px,420px) 1fr;
    gap:28px;
    padding-inline:34px;
  }
  .threshold-title{font-size:clamp(60px,7vw,92px)}
  .threshold-door{min-width:280px;width:min(34vw,380px)}
  .threshold-note-right{padding-left:20px}
}
@media(max-width:900px){
  .entry-portal-layout{min-height:100svh !important}
  .threshold-experience{
    min-height:100svh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:86px 18px 92px;
  }
  .threshold-note-left,
  .threshold-note-right{
    position:absolute;
    z-index:5;
    max-width:min(86vw,430px);
    text-align:center;
    padding:0;
    border:0;
    justify-self:center;
  }
  .threshold-note-left{top:112px;left:50%;transform:translateX(-50%)}
  .threshold-note-right{bottom:104px;left:50%;transform:translateX(-50%)}
  .threshold-small{font-size:7px;letter-spacing:.28em;margin-bottom:10px}
  .threshold-title{font-size:clamp(48px,15vw,76px);max-width:none}
  .threshold-copy{display:none}
  .threshold-prompt{font-size:24px;margin-bottom:16px}
  .threshold-details{display:flex;justify-content:center;background:transparent;gap:8px}
  .threshold-details span{padding:8px 9px;font-size:7px;letter-spacing:.18em;background:rgba(8,7,5,.48)}
  .threshold-door{
    width:min(72vw,330px);
    min-width:250px;
    height:min(58vh,500px);
    min-height:390px;
  }
  .threshold-enter{bottom:10% !important;min-width:190px !important}
  .door-vertical{display:none}
  .threshold-bottom{
    left:18px;
    right:18px;
    bottom:22px;
    justify-content:center;
  }
  .threshold-key,.threshold-hint{display:none !important}
  .threshold-location{font-size:7px;letter-spacing:.22em}
  .threshold-curtain{width:48vw;opacity:.38}
}
@media(max-width:620px){
  .threshold-note-left{top:92px}
  .threshold-note-right{bottom:90px}
  .threshold-title{font-size:54px}
  .threshold-prompt{font-size:21px}
  .threshold-door{
    width:min(78vw,300px);
    height:min(55vh,455px);
    min-height:360px;
  }
  .threshold-enter{font-size:9px !important;min-width:176px !important;padding:15px 24px !important}
  .threshold-details span:nth-child(2){display:none}
}



/* Minimal, more immersive entry: fewer words, stronger threshold feeling. */
.entry{
  background:
    radial-gradient(circle at 50% 46%, rgba(255,227,173,.16), transparent 18%),
    radial-gradient(circle at 50% 72%, rgba(135,74,35,.22), transparent 30%),
    linear-gradient(120deg,#020201 0%,#070503 35%,#130d08 62%,#040302 100%) !important;
}
.threshold-experience{
  grid-template-columns:minmax(200px,.58fr) minmax(410px,620px) minmax(180px,.48fr) !important;
  padding-top:96px !important;
}
.threshold-dust{
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.34;
  pointer-events:none;
  background-image:
    radial-gradient(circle,rgba(244,234,223,.24) 0 1px,transparent 1.2px),
    radial-gradient(circle,rgba(224,194,142,.16) 0 1px,transparent 1.2px);
  background-size:120px 120px,190px 190px;
  background-position:0 0,42px 78px;
  animation:dustFloat 18s linear infinite;
}
.threshold-rays{
  position:absolute;
  inset:-10% -20%;
  z-index:-1;
  opacity:.32;
  pointer-events:none;
  background:
    conic-gradient(from 178deg at 50% 8%, transparent 0deg, rgba(224,194,142,.18) 14deg, transparent 25deg, transparent 48deg, rgba(255,236,190,.14) 58deg, transparent 72deg, transparent 360deg);
  filter:blur(10px);
  transform:translateY(-4%);
  animation:raysMove 12s ease-in-out infinite;
}
.threshold-veil{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(0,0,0,.72),transparent 34%,transparent 66%,rgba(0,0,0,.72)),
    radial-gradient(ellipse at center,transparent 0 34%,rgba(0,0,0,.18) 68%,rgba(0,0,0,.55));
}
.threshold-note{
  z-index:4 !important;
}
.threshold-note-left{
  max-width:300px !important;
  transform:translateY(-6vh);
}
.threshold-small{
  font-size:8px !important;
  letter-spacing:.38em !important;
  margin-bottom:18px !important;
  color:#d9bd85 !important;
  opacity:.88;
}
.threshold-title{
  font-size:clamp(74px,7vw,128px) !important;
  line-height:.78 !important;
  max-width:5ch !important;
}
.threshold-note-right{
  align-self:end !important;
  justify-self:start !important;
  transform:translateY(-12vh);
  border-left:0 !important;
  padding:0 !important;
  max-width:160px !important;
}
.threshold-prompt{
  margin:0 !important;
  font-size:clamp(27px,2.4vw,39px) !important;
  color:#e9d4ad !important;
  opacity:.82;
}
.threshold-details,
.threshold-copy,
.entry-intro,
.threshold-hint{
  display:none !important;
}
.threshold-door{
  width:min(38vw,560px) !important;
  min-width:400px !important;
  height:min(78vh,720px) !important;
  min-height:610px !important;
}
.door-glow{
  inset:3% 5% -3% !important;
  filter:blur(24px) !important;
  opacity:1 !important;
  background:
    radial-gradient(circle at 50% 30%,rgba(255,238,198,.62),rgba(225,166,91,.24) 34%,rgba(91,51,25,.10) 58%,transparent 74%) !important;
}
.door-arch{
  background:
    linear-gradient(90deg,rgba(255,255,255,.055),transparent 13%,transparent 87%,rgba(255,255,255,.045)),
    linear-gradient(122deg,rgba(42,25,15,.96),rgba(7,5,4,.96) 45%,rgba(37,21,12,.98)) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.04),
    inset 0 0 110px rgba(0,0,0,.72),
    0 54px 115px rgba(0,0,0,.66),
    0 0 90px rgba(224,194,142,.10) !important;
}
.door-slit{
  width:5px !important;
  box-shadow:0 0 34px rgba(255,229,177,.68),0 0 120px rgba(224,194,142,.28) !important;
}
.door-handle{
  position:absolute !important;
  top:51.5% !important;
  width:8px !important;
  height:72px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,rgba(247,230,194,.98),rgba(217,181,112,.96) 40%,rgba(144,97,49,.9)) !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.08),0 0 22px rgba(224,194,142,.24),0 14px 28px rgba(0,0,0,.22) !important;
  z-index:4 !important;
  opacity:.92 !important;
}
.door-handle-left{
  left:calc(50% - 22px) !important;
}
.door-handle-right{
  left:calc(50% + 14px) !important;
}
.door-vertical{
  opacity:.34 !important;
  letter-spacing:1.28em !important;
}
.threshold-enter{
  bottom:10.5% !important;
  min-width:196px !important;
  padding:16px 30px !important;
  background:rgba(7,5,4,.44) !important;
}
.threshold-bottom{
  bottom:30px !important;
}
.threshold-key{
  opacity:.72 !important;
  width:38px !important;
}
.threshold-location{
  background:rgba(8,7,5,.26) !important;
  backdrop-filter:blur(14px) !important;
}

@keyframes dustFloat{
  0%{background-position:0 0,42px 78px}
  100%{background-position:120px -240px,232px -112px}
}
@keyframes raysMove{
  0%,100%{opacity:.23;transform:translateY(-5%) scale(1)}
  50%{opacity:.4;transform:translateY(-2%) scale(1.04)}
}

@media(max-width:1100px){
  .threshold-experience{grid-template-columns:minmax(180px,.55fr) minmax(350px,500px) minmax(140px,.42fr) !important}
  .threshold-door{min-width:340px !important;height:min(72vh,650px) !important;min-height:540px !important}
  .threshold-title{font-size:78px !important}
}
@media(max-width:900px){
  .threshold-experience{
    display:flex !important;
    padding:82px 18px 90px !important;
  }
  .threshold-note-left{
    top:104px !important;
    transform:translateX(-50%) !important;
    max-width:280px !important;
  }
  .threshold-note-right{
    bottom:112px !important;
    transform:translateX(-50%) !important;
    max-width:190px !important;
    text-align:center !important;
  }
  .threshold-title{font-size:62px !important;max-width:none !important}
  .threshold-prompt{font-size:23px !important}
  .threshold-door{
    width:min(76vw,350px) !important;
    min-width:270px !important;
    height:min(60vh,510px) !important;
    min-height:410px !important;
  }
  .threshold-enter{bottom:9% !important}
  .door-handle{height:58px !important;width:7px !important}
  .door-handle-left{left:calc(50% - 18px) !important}
  .door-handle-right{left:calc(50% + 11px) !important}
  .threshold-location{font-size:7px !important}
}
@media(max-width:620px){
  .threshold-note-left{top:90px !important}
  .threshold-note-right{bottom:92px !important}
  .threshold-title{font-size:52px !important}
  .threshold-door{width:min(78vw,300px) !important;min-height:360px !important}
  .door-handle{height:50px !important}
}



/* Cleaner, more readable private request section for older readers. */
.private-request-revamp{
  padding:clamp(76px,8vh,108px) clamp(34px,4.8vw,82px) !important;
  min-height:100vh !important;
}
.private-request-revamp .request-frame{
  width:min(100%,1660px) !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:minmax(390px,.72fr) minmax(620px,1fr) !important;
  gap:clamp(46px,5.6vw,92px) !important;
  align-items:center !important;
}
.request-intro-panel{
  max-width:640px !important;
}
.request-intro-panel .section-label{
  font-size:11px !important;
  letter-spacing:.34em !important;
  margin-bottom:20px !important;
  color:var(--gold-light) !important;
}
.request-intro-panel .display{
  max-width:8ch !important;
  font-size:clamp(54px,5.5vw,88px) !important;
  line-height:.92 !important;
  letter-spacing:-.045em !important;
  margin-bottom:26px !important;
}
.request-intro-panel .body-copy{
  max-width:560px !important;
  font-size:clamp(16px,1.05vw,18px) !important;
  line-height:1.65 !important;
  color:#e0d4c5 !important;
}
.request-process{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
  margin-top:32px !important;
  background:transparent !important;
}
.request-step{
  display:grid !important;
  grid-template-columns:48px 1fr !important;
  gap:18px !important;
  align-items:start !important;
  min-height:0 !important;
  padding:18px 20px !important;
  border:1px solid rgba(224,194,142,.18) !important;
  background:rgba(8,7,5,.58) !important;
  box-shadow:0 16px 40px rgba(0,0,0,.16) !important;
}
.request-step span{
  font:italic 500 24px/1 var(--serif) !important;
  color:#e4c68f !important;
  letter-spacing:.01em !important;
}
.request-step strong{
  display:block !important;
  margin-bottom:6px !important;
  font:500 23px/1.05 var(--serif) !important;
  color:#f2e7dc !important;
}
.request-step p{
  margin:0 !important;
  max-width:30rem !important;
  font-size:14px !important;
  line-height:1.55 !important;
  color:#cfc2b4 !important;
}
.request-discretion-note{
  margin-top:16px !important;
  padding:18px 20px !important;
  border-left:1px solid rgba(224,194,142,.42) !important;
  background:linear-gradient(90deg,rgba(224,194,142,.08),transparent) !important;
  color:#ead8b8 !important;
  font:italic 500 20px/1.35 var(--serif) !important;
}

.request-form-panel{
  max-width:840px !important;
  justify-self:end !important;
  padding:clamp(38px,4.2vw,60px) clamp(38px,4.5vw,64px) !important;
  background:linear-gradient(145deg,rgba(22,16,11,.92),rgba(6,5,4,.9)) !important;
  border:1px solid rgba(224,194,142,.26) !important;
  box-shadow:0 38px 90px rgba(0,0,0,.34) !important;
}
.request-form-panel .form-heading-row{
  align-items:flex-start !important;
  gap:18px !important;
  margin-bottom:14px !important;
}
.request-form-panel .form-time{
  display:none !important;
}
.request-form-panel .form-kicker{
  margin-bottom:10px !important;
  font-size:10px !important;
  letter-spacing:.32em !important;
  color:#d8b77a !important;
}
.request-form-panel h3{
  margin:0 !important;
  font-size:clamp(44px,4.2vw,66px) !important;
  line-height:.96 !important;
  letter-spacing:-.03em !important;
}
.request-form-panel .form-intro,
.request-form-panel .form-guidance{
  max-width:640px !important;
  color:#d7cabd !important;
  font-size:16px !important;
  line-height:1.6 !important;
}
.request-form-panel .form-intro{
  margin:16px 0 6px !important;
}
.request-form-panel .form-guidance{
  margin:0 0 30px !important;
  color:#e1c999 !important;
}
.request-form-panel .form-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:24px 30px !important;
}
.request-form-panel .field label{
  display:block !important;
  margin-bottom:9px !important;
  font-size:10px !important;
  letter-spacing:.28em !important;
  line-height:1.3 !important;
  color:#dfbf7d !important;
}
.request-form-panel .field input,
.request-form-panel .field select,
.request-form-panel .field textarea{
  width:100% !important;
  min-height:58px !important;
  padding:14px 0 !important;
  border:0 !important;
  border-bottom:1px solid rgba(224,194,142,.32) !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#f3eadf !important;
  font-size:17px !important;
  line-height:1.35 !important;
  box-shadow:none !important;
}
.request-form-panel .field input:focus,
.request-form-panel .field select:focus,
.request-form-panel .field textarea:focus{
  outline:0 !important;
  border-bottom-color:#e0c28e !important;
}
.request-form-panel .field select{
  appearance:none !important;
  -webkit-appearance:none !important;
  background:
    linear-gradient(45deg,transparent 50%,#e0c28e 50%) calc(100% - 18px) 50%/7px 7px no-repeat,
    linear-gradient(135deg,#e0c28e 50%,transparent 50%) calc(100% - 13px) 50%/7px 7px no-repeat !important;
  padding-right:40px !important;
}
.request-form-panel .field select option{
  background:#0d0906 !important;
  color:#f3eadf !important;
}
.request-form-panel .message-field textarea{
  min-height:136px !important;
  resize:vertical !important;
}
.request-form-panel .field.full,
.request-form-panel .check{
  grid-column:1 / -1 !important;
}
.request-form-panel .check{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin-top:-2px !important;
  color:#d4c7b7 !important;
  font-size:14px !important;
  line-height:1.5 !important;
}
.request-form-panel .check input{
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
}
.request-form-panel .submit{
  width:100% !important;
  min-height:64px !important;
  padding:0 26px !important;
  border:0 !important;
  background:linear-gradient(90deg,#e9c980,#c99e59) !important;
  color:#1a1008 !important;
  font-size:11px !important;
  letter-spacing:.32em !important;
  text-indent:.32em !important;
  font-weight:600 !important;
}

@media(max-width:1180px){
  .private-request-revamp .request-frame{
    grid-template-columns:1fr !important;
    gap:36px !important;
  }
  .request-intro-panel,
  .request-form-panel{
    max-width:900px !important;
    justify-self:center !important;
  }
  .request-intro-panel .display{
    max-width:12ch !important;
  }
}
@media(max-width:760px){
  .private-request-revamp{
    padding:86px 20px !important;
  }
  .request-intro-panel .display{
    font-size:48px !important;
  }
  .request-form-panel{
    padding:34px 22px !important;
  }
  .request-form-panel .form-grid{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
  .request-form-panel h3{
    font-size:40px !important;
  }
  .request-step{
    grid-template-columns:42px 1fr !important;
    padding:16px !important;
  }
}



/* More bottom breathing room inside the Confidential Note form card. */
.private-request-revamp .request-frame{
  width:min(100%,1780px) !important;
  grid-template-columns:minmax(350px,.58fr) minmax(790px,1.34fr) !important;
  gap:clamp(54px,5vw,92px) !important;
}
.request-form-panel{
  width:100% !important;
  max-width:1050px !important;
  padding-top:clamp(42px,4vw,62px) !important;
  padding-right:clamp(52px,5.2vw,86px) !important;
  padding-left:clamp(52px,5.2vw,86px) !important;
  padding-bottom:clamp(62px,6vw,96px) !important;
}
.request-form-panel .form-heading-row{
  display:block !important;
  margin-bottom:16px !important;
}
.request-form-panel .form-kicker{
  white-space:nowrap !important;
  letter-spacing:.34em !important;
  margin-bottom:12px !important;
}
.request-form-panel .form-intro{
  margin-bottom:8px !important;
}
.request-form-panel .form-guidance{
  margin-bottom:32px !important;
}
.request-form-panel .form-grid{
  gap:25px 42px !important;
}
.request-form-panel .message-field textarea{
  min-height:138px !important;
}
.request-form-panel .check{
  margin-top:2px !important;
  margin-bottom:4px !important;
}
.request-form-panel .field.full:last-child{
  margin-top:8px !important;
}
.request-form-panel .submit{
  min-height:68px !important;
}
@media(max-width:1250px){
  .private-request-revamp .request-frame{
    grid-template-columns:1fr !important;
    max-width:1060px !important;
  }
  .request-form-panel{
    justify-self:center !important;
    max-width:1060px !important;
  }
}
@media(max-width:760px){
  .request-form-panel{
    padding:34px 22px 48px !important;
  }
  .request-form-panel .form-kicker{
    white-space:normal !important;
  }
}



/* Refined entrance transition: actual door panels open with transform only, then a soft crossfade. */
.door-panel{
  position:absolute;
  top:0;
  bottom:0;
  width:50%;
  z-index:3;
  pointer-events:none;
  overflow:hidden;
  border:1px solid rgba(224,194,142,.15);
  background:
    linear-gradient(90deg,rgba(255,255,255,.045),transparent 18%,transparent 82%,rgba(255,255,255,.035)),
    linear-gradient(122deg,rgba(42,25,15,.96),rgba(8,5,4,.97) 48%,rgba(37,21,12,.98));
  box-shadow:inset 0 0 70px rgba(0,0,0,.58);
  will-change:transform,opacity;
}
.door-panel::before{
  content:"";
  position:absolute;
  inset:6%;
  border:1px solid rgba(224,194,142,.11);
  opacity:.7;
}
.door-panel-left{
  left:0;
  border-radius:52% 0 0 2%/28% 0 0 2%;
  transform-origin:left center;
}
.door-panel-right{
  right:0;
  border-radius:0 52% 2% 0/0 28% 2% 0;
  transform-origin:right center;
}
.door-arch{
  opacity:.16 !important;
}
.door-slit,
.door-handle,
.door-vertical,
.threshold-enter,
.door-transition-light,
.door-transition-veil,
.threshold-door,
.threshold-note,
.threshold-bottom{
  will-change:opacity,transform;
}
.door-transition-grain{
  display:none !important;
}
.entry.is-opening{
  transition:opacity .9s cubic-bezier(.4,0,.2,1) 1.02s, visibility .9s cubic-bezier(.4,0,.2,1) 1.02s !important;
}
.entry.is-opening .door-panel-left{
  animation:doorPanelLeftOpen 1.15s cubic-bezier(.22,.9,.16,1) forwards !important;
}
.entry.is-opening .door-panel-right{
  animation:doorPanelRightOpen 1.15s cubic-bezier(.22,.9,.16,1) forwards !important;
}
.entry.is-opening .door-slit{
  animation:doorSlitSoftFade .72s ease forwards !important;
  filter:none !important;
}
.entry.is-opening .door-glow{
  animation:doorGlowExpand 1.18s cubic-bezier(.22,.9,.16,1) forwards !important;
  filter:blur(18px) !important;
}
.entry.is-opening .door-transition-light{
  width:100% !important;
  left:0 !important;
  transform:scaleX(.02) !important;
  transform-origin:center !important;
  filter:none !important;
  background:radial-gradient(ellipse at center,rgba(255,241,210,.58),rgba(224,194,142,.18) 33%,transparent 72%) !important;
  animation:doorLightSilk .95s cubic-bezier(.22,.9,.16,1) forwards !important;
}
.entry.is-opening .door-transition-veil{
  filter:none !important;
  transform:scaleX(.02) !important;
  transform-origin:center !important;
  background:linear-gradient(90deg,rgba(0,0,0,.22),rgba(255,236,196,.14) 50%,rgba(0,0,0,.22)) !important;
  animation:doorVeilSilk 1.05s cubic-bezier(.22,.9,.16,1) forwards !important;
}
.entry.is-opening .threshold-door{
  animation:doorSceneRecede 1.22s cubic-bezier(.22,.9,.16,1) forwards !important;
}
.entry.is-opening .door-handle,
.entry.is-opening .door-vertical,
.entry.is-opening .threshold-enter{
  animation:fastDetailFade .45s ease forwards !important;
}
.entry.is-opening .threshold-note,
.entry.is-opening .threshold-bottom{
  animation:softContentFade .76s cubic-bezier(.4,0,.2,1) forwards !important;
}
.entry.is-opening .threshold-curtain.left,
.entry.is-opening .threshold-curtain.right,
.entry.is-opening .threshold-floor{
  animation:softAmbientFade .86s ease forwards !important;
}
body:not(.locked)::before{
  animation:softPageAfterglow .82s ease .08s forwards !important;
}

@keyframes doorPanelLeftOpen{
  0%{transform:translateX(0) rotateY(0);opacity:1}
  58%{transform:translateX(-13%) rotateY(-34deg);opacity:.86}
  100%{transform:translateX(-34%) rotateY(-62deg);opacity:0}
}
@keyframes doorPanelRightOpen{
  0%{transform:translateX(0) rotateY(0);opacity:1}
  58%{transform:translateX(13%) rotateY(34deg);opacity:.86}
  100%{transform:translateX(34%) rotateY(62deg);opacity:0}
}
@keyframes doorSlitSoftFade{
  0%{opacity:1;transform:translateX(-50%) scaleX(1)}
  100%{opacity:0;transform:translateX(-50%) scaleX(18)}
}
@keyframes doorGlowExpand{
  0%{opacity:1;transform:scale(.98)}
  60%{opacity:.92;transform:scale(1.08)}
  100%{opacity:0;transform:scale(1.18)}
}
@keyframes doorLightSilk{
  0%{opacity:0;transform:scaleX(.02)}
  35%{opacity:.5;transform:scaleX(.22)}
  100%{opacity:0;transform:scaleX(1)}
}
@keyframes doorVeilSilk{
  0%{opacity:0;transform:scaleX(.02)}
  40%{opacity:.34;transform:scaleX(.28)}
  100%{opacity:0;transform:scaleX(1)}
}
@keyframes doorSceneRecede{
  0%{transform:scale(1);opacity:1}
  68%{transform:scale(1.035);opacity:.78}
  100%{transform:scale(1.06);opacity:0}
}
@keyframes fastDetailFade{
  to{opacity:0;transform:translateY(6px)}
}
@keyframes softContentFade{
  to{opacity:0;transform:translateY(10px)}
}
@keyframes softAmbientFade{
  to{opacity:0}
}
@keyframes softPageAfterglow{
  0%{opacity:0}
  34%{opacity:.22}
  100%{opacity:0}
}
@media(max-width:900px){
  .door-panel-left{border-radius:50% 0 0 2%/26% 0 0 2%}
  .door-panel-right{border-radius:0 50% 2% 0/0 26% 2% 0}
  @keyframes doorPanelLeftOpen{
    0%{transform:translateX(0);opacity:1}
    100%{transform:translateX(-42%);opacity:0}
  }
  @keyframes doorPanelRightOpen{
    0%{transform:translateX(0);opacity:1}
    100%{transform:translateX(42%);opacity:0}
  }
}



/* Re-center the entrance door while keeping the refined panel-opening transition. */
@media(min-width:901px){
  .entry-portal-layout .threshold-experience{
    grid-template-columns:minmax(0,1fr) minmax(400px,560px) minmax(0,1fr) !important;
    gap:clamp(28px,4vw,70px) !important;
  }
  .entry-portal-layout .threshold-door{
    grid-column:2 !important;
    justify-self:center !important;
    margin-inline:auto !important;
    left:auto !important;
    right:auto !important;
  }
  .entry-portal-layout .threshold-note-left{
    grid-column:1 !important;
    justify-self:end !important;
    margin-right:clamp(10px,1.5vw,24px) !important;
  }
  .entry-portal-layout .threshold-note-right{
    grid-column:3 !important;
    justify-self:start !important;
    margin-left:clamp(10px,1.5vw,24px) !important;
  }
}
@media(min-width:1200px){
  .entry-portal-layout .threshold-door{
    width:min(36vw,540px) !important;
  }
}



/* Fix field alignment: the input line now belongs visually to the label above, not the next label below. */
.request-form-panel .form-grid{
  gap:32px 42px !important;
}
.request-form-panel .field{
  display:flex !important;
  flex-direction:column !important;
}
.request-form-panel .field label{
  margin-bottom:6px !important;
  line-height:1.15 !important;
}
.request-form-panel .field input,
.request-form-panel .field select{
  min-height:44px !important;
  height:44px !important;
  padding:4px 0 10px !important;
  line-height:1.25 !important;
}
.request-form-panel .field textarea{
  padding-top:10px !important;
  line-height:1.45 !important;
}
.request-form-panel .message-field textarea{
  min-height:138px !important;
}
.request-form-panel .form-guidance{
  margin-bottom:34px !important;
}
.request-form-panel .check{
  margin-top:-2px !important;
}
.request-form-panel .field.full:last-child{
  margin-top:2px !important;
}
@media(max-width:760px){
  .request-form-panel .form-grid{
    gap:28px !important;
  }
}



/* Refine the door back to the earlier clean arched silhouette, while keeping the two-panel opening. */
.threshold-door{
  border-radius:50% 50% 2.5% 2.5% / 24% 24% 2.5% 2.5% !important;
  overflow:hidden !important;
}
.door-glow,
.door-arch{
  border-radius:50% 50% 2.5% 2.5% / 24% 24% 2.5% 2.5% !important;
}
.door-arch{
  opacity:.3 !important;
  inset:0 !important;
  overflow:hidden !important;
}
.door-panel{
  top:0 !important;
  bottom:0 !important;
  height:100% !important;
  width:50.2% !important;
  clip-path:none !important;
  border-radius:0 !important;
  border-top:1px solid rgba(224,194,142,.16) !important;
  border-bottom:1px solid rgba(224,194,142,.12) !important;
  overflow:hidden !important;
}
.door-panel-left{
  left:0 !important;
  border-right:1px solid rgba(255,232,180,.08) !important;
  transform-origin:left center !important;
}
.door-panel-right{
  right:0 !important;
  border-left:1px solid rgba(255,232,180,.08) !important;
  transform-origin:right center !important;
}
.door-panel::before{
  inset:8% 9% 10% !important;
  border-radius:46% 46% 2% 2% / 18% 18% 2% 2% !important;
  opacity:.5 !important;
}
.door-panel-left::after,
.door-panel-right::after{
  display:none !important;
}
.door-slit{
  top:8% !important;
  bottom:7% !important;
}
.door-shadow{
  display:none !important;
}
.door-handle{
  z-index:5 !important;
}
.door-vertical,
.threshold-enter{
  z-index:6 !important;
}
@media(min-width:1200px){
  .entry-portal-layout .threshold-door{
    width:min(37vw,550px) !important;
    height:min(78vh,720px) !important;
  }
}
@media(max-width:900px){
  .threshold-door{
    border-radius:50% 50% 3% 3% / 22% 22% 3% 3% !important;
  }
}



/* Make each Confidential Note field visually belong to its own title. */
.request-form-panel .form-grid{
  gap:18px 24px !important;
}
.request-form-panel .field{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  min-height:92px !important;
  padding:18px 20px 14px !important;
  border:1px solid rgba(224,194,142,.18) !important;
  background:rgba(255,244,220,.035) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.018) !important;
}
.request-form-panel .field::after{
  content:"";
  position:absolute;
  left:20px;
  right:20px;
  bottom:14px;
  height:1px;
  background:rgba(224,194,142,.36);
  pointer-events:none;
}
.request-form-panel .field label{
  margin:0 0 10px !important;
  color:#e6c88f !important;
  font-size:10.5px !important;
  letter-spacing:.25em !important;
  line-height:1.18 !important;
}
.request-form-panel .field input,
.request-form-panel .field select,
.request-form-panel .field textarea{
  height:auto !important;
  min-height:34px !important;
  padding:0 0 8px !important;
  border:0 !important;
  border-bottom:0 !important;
  background:transparent !important;
  color:#f4eadf !important;
  font-size:18px !important;
  line-height:1.35 !important;
}
.request-form-panel .field select{
  padding-right:34px !important;
  background:
    linear-gradient(45deg,transparent 50%,#e0c28e 50%) calc(100% - 16px) 50%/7px 7px no-repeat,
    linear-gradient(135deg,#e0c28e 50%,transparent 50%) calc(100% - 11px) 50%/7px 7px no-repeat !important;
}
.request-form-panel .field:focus-within{
  border-color:rgba(224,194,142,.42) !important;
  background:rgba(255,244,220,.055) !important;
}
.request-form-panel .field:focus-within::after{
  background:#e0c28e !important;
}
.request-form-panel .message-field{
  min-height:178px !important;
}
.request-form-panel .message-field textarea{
  min-height:106px !important;
  padding-top:2px !important;
  resize:vertical !important;
}
.request-form-panel .field.full:last-child{
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  min-height:auto !important;
  margin-top:10px !important;
}
.request-form-panel .field.full:last-child::after{
  display:none !important;
}
.request-form-panel .check{
  margin:4px 0 2px !important;
  padding-left:4px !important;
}
.request-form-panel .form-guidance{
  margin-bottom:28px !important;
}
@media(max-width:760px){
  .request-form-panel .form-grid{
    gap:16px !important;
  }
  .request-form-panel .field{
    min-height:88px !important;
    padding:16px 16px 13px !important;
  }
  .request-form-panel .field::after{
    left:16px;
    right:16px;
    bottom:13px;
  }
}



/* Clean the bottom of Confidential Note, especially the message area. */
.request-form-panel .message-field{
  display:block !important;
  min-height:0 !important;
  padding:22px 22px 20px !important;
  border:1px solid rgba(224,194,142,.22) !important;
  background:rgba(255,244,220,.035) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.018) !important;
}
.request-form-panel .message-field::after{
  display:none !important;
}
.request-form-panel .message-field label{
  display:block !important;
  margin:0 0 18px !important;
}
.request-form-panel .message-field textarea{
  display:block !important;
  width:100% !important;
  height:128px !important;
  min-height:128px !important;
  padding:0 !important;
  border:0 !important;
  border-bottom:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  resize:vertical !important;
  color:#f4eadf !important;
  font-size:18px !important;
  line-height:1.45 !important;
}
.request-form-panel .message-field textarea::placeholder{
  color:rgba(224,194,142,.55) !important;
}
.request-form-panel .message-field:focus-within{
  border-color:rgba(224,194,142,.46) !important;
  background:rgba(255,244,220,.055) !important;
}
.request-form-panel .check{
  margin:14px 0 8px !important;
  padding-left:2px !important;
}
.request-form-panel .field.full:last-child{
  margin-top:12px !important;
}
.request-form-panel .submit{
  margin-top:0 !important;
}
.request-form-panel{
  padding-bottom:clamp(56px,5.5vw,84px) !important;
}
@media(max-width:760px){
  .request-form-panel .message-field{
    padding:18px 16px !important;
  }
  .request-form-panel .message-field textarea{
    height:132px !important;
    min-height:132px !important;
  }
}



/* Remove the random ENTER word/button immediately during the opening transition. */
.entry.is-opening .door-vertical,
.entry.is-opening .threshold-enter{
  opacity:0 !important;
  visibility:hidden !important;
  animation:none !important;
  transition:none !important;
}
.entry.is-opening .door-handle{
  opacity:0 !important;
  animation:none !important;
  transition:none !important;
}



/* Submit button is now outside the field grid, so it stays visible and aligned. */
.request-form-panel .form-grid{
  margin-bottom:0 !important;
}
.request-form-panel .submit-row-fixed{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  width:100% !important;
  margin-top:24px !important;
  position:relative !important;
  z-index:20 !important;
}
.request-form-panel .submit-row-fixed .submit{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:72px !important;
  padding:0 30px !important;
  border:0 !important;
  border-radius:0 !important;
  background:linear-gradient(90deg,#e9c980,#c99e59) !important;
  color:#140c06 !important;
  font-size:12px !important;
  letter-spacing:.32em !important;
  text-indent:.32em !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  cursor:pointer !important;
  visibility:visible !important;
  opacity:1 !important;
  box-shadow:0 20px 50px rgba(0,0,0,.22) !important;
}
.request-form-panel .submit-row-fixed .submit:hover{
  transform:translateY(-1px) !important;
}
.request-form-panel{
  padding-bottom:clamp(62px,5.8vw,90px) !important;
}
.request-form-panel .check{
  margin:18px 0 0 !important;
}
.request-form-panel .message-field{
  min-height:0 !important;
}
.request-form-panel .message-field textarea{
  min-height:120px !important;
  height:120px !important;
}
html[lang="fr"] .request-form-panel .submit-row-fixed .submit{
  letter-spacing:.22em !important;
  text-indent:.22em !important;
}
@media(max-width:760px){
  .request-form-panel .submit-row-fixed{
    margin-top:20px !important;
  }
  .request-form-panel .submit-row-fixed .submit{
    min-height:66px !important;
    font-size:11px !important;
    letter-spacing:.22em !important;
    text-indent:.22em !important;
  }
}



/* Larger section identifiers so visitors immediately understand each part of the page. */
.section-label{
  font-size:clamp(13px,.9vw,16px) !important;
  letter-spacing:.34em !important;
  line-height:1.25 !important;
  color:#e2c384 !important;
  margin-bottom:clamp(18px,2vw,28px) !important;
}
.salon .display,
.pathways .display,
.experience-rebuilt .display,
.destinations .display,
.gallery .display,
.availability .display{
  font-size:clamp(54px,5.2vw,96px) !important;
  line-height:.94 !important;
  letter-spacing:-.045em !important;
}
.experience-rebuilt .section-label,
.gallery .section-label,
.destinations .section-label,
.availability .section-label{
  font-size:clamp(15px,1.05vw,19px) !important;
  letter-spacing:.32em !important;
}
@media(max-width:760px){
  .section-label{
    font-size:13px !important;
    letter-spacing:.26em !important;
  }
  .salon .display,
  .pathways .display,
  .experience-rebuilt .display,
  .destinations .display,
  .gallery .display,
  .availability .display{
    font-size:44px !important;
  }
}



/* Real final fix: button lives inside the grid right after the message, so it cannot disappear below the card. */
.private-request-revamp{
  min-height:auto !important;
  padding-bottom:clamp(96px,9vw,150px) !important;
}
.private-request-revamp .request-form-panel{
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
  padding-bottom:clamp(56px,5.4vw,82px) !important;
}
.request-form-panel .form-grid{
  overflow:visible !important;
}
.request-form-panel .submit-row-fixed{
  grid-column:1 / -1 !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  width:100% !important;
  height:auto !important;
  margin:18px 0 0 !important;
  padding:0 !important;
  position:relative !important;
  z-index:30 !important;
}
.request-form-panel .submit-row-fixed .submit{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  visibility:visible !important;
  opacity:1 !important;
  width:100% !important;
  min-height:74px !important;
  height:auto !important;
  margin:0 !important;
  padding:0 30px !important;
  border:0 !important;
  border-radius:0 !important;
  background:linear-gradient(90deg,#e9c980,#c99e59) !important;
  color:#120b06 !important;
  font-size:12px !important;
  letter-spacing:.32em !important;
  text-indent:.32em !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  cursor:pointer !important;
  box-shadow:0 20px 54px rgba(0,0,0,.25) !important;
}
.request-form-panel .submit-row-fixed .submit:hover{
  background:linear-gradient(90deg,#f0d69a,#d2a763) !important;
  color:#100905 !important;
}
.request-form-panel .check{
  grid-column:1 / -1 !important;
  margin:8px 0 0 !important;
  padding-left:4px !important;
}
.request-form-panel .message-field{
  margin-bottom:0 !important;
}
@media (min-width:1051px) and (max-height:820px){
  .private-request-revamp .request-form-panel{
    max-height:none !important;
    overflow:visible !important;
  }
  .private-request-revamp{
    padding-bottom:clamp(90px,8vw,140px) !important;
  }
}
@media(max-width:760px){
  .request-form-panel .submit-row-fixed .submit{
    min-height:68px !important;
    font-size:11px !important;
    letter-spacing:.22em !important;
    text-indent:.22em !important;
  }
}



/* Contextual section-label colors for readability. */
.pathways .section-label[data-i18n="discoverLabel"]{
  color:#f2d99e !important;
  text-shadow:0 0 24px rgba(224,194,142,.22) !important;
}
.availability .section-label[data-i18n="availabilityLabel"]{
  color:#3a2418 !important;
  text-shadow:none !important;
}
.availability .display{
  color:#120b06 !important;
}
.availability .body-copy,
.availability p{
  color:#3f3028 !important;
}
.experience-rebuilt .section-label[data-i18n="experiencesLabel"],
.gallery .section-label[data-i18n="galleryLabel"],
.destinations .section-label[data-i18n="destinationsLabel"]{
  color:#f0d49a !important;
  text-shadow:0 0 22px rgba(224,194,142,.18) !important;
}



/* Darker Discover My World label for better balance. */
.pathways .section-label[data-i18n="discoverLabel"]{
  color:#9b6f38 !important;
  text-shadow:none !important;
}



/* No key on the button or handle area. Only one key near the intro note. */
.enter-key-icon,
.door-close-key,
.door-vertical{
  display:none !important;
}
.threshold-note-left{
  position:relative !important;
}
.note-key-icon{
  position:absolute;
  z-index:8;
  left:clamp(-52px,-3.2vw,-34px);
  top:clamp(-8px,1vh,8px);
  width:clamp(30px,2.7vw,46px);
  pointer-events:none;
  opacity:.72;
  transform:rotate(-18deg);
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.42)) drop-shadow(0 0 12px rgba(224,194,142,.14));
  animation:noteKeyFloat 6.4s ease-in-out infinite;
}
.note-key-icon img{
  display:block;
  width:100%;
  height:auto;
}
@keyframes noteKeyFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(-18deg)}
  50%{transform:translate3d(3px,-6px,0) rotate(-13deg)}
}

/* Lucioles: tiny warm floating lights. */
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:45;
  pointer-events:none;
  opacity:.42 !important;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,236,188,.52) 0 .7px,rgba(255,236,188,.22) .9px,transparent 2.2px),
    radial-gradient(circle at 28% 74%,rgba(255,246,218,.38) 0 .6px,rgba(255,246,218,.16) .85px,transparent 2px),
    radial-gradient(circle at 41% 36%,rgba(224,194,142,.38) 0 .65px,rgba(224,194,142,.14) .9px,transparent 2.1px),
    radial-gradient(circle at 58% 20%,rgba(255,236,188,.44) 0 .7px,rgba(255,236,188,.16) .9px,transparent 2.2px),
    radial-gradient(circle at 74% 66%,rgba(255,246,218,.34) 0 .6px,rgba(255,246,218,.12) .85px,transparent 2px),
    radial-gradient(circle at 88% 42%,rgba(224,194,142,.36) 0 .65px,rgba(224,194,142,.13) .9px,transparent 2.1px);
  background-size:340px 340px,460px 460px,520px 520px,390px 390px,500px 500px,610px 610px !important;
  animation:luciolesDrift 38s linear infinite, luciolesGlow 7s ease-in-out infinite !important;
  mix-blend-mode:screen;
}
@keyframes luciolesDrift{
  0%{background-position:0 0,60px 130px,120px 30px,30px 90px,150px 40px,90px 180px}
  100%{background-position:80px -120px,10px -60px,180px -140px,110px -80px,60px -150px,170px -70px}
}
@keyframes luciolesGlow{
  0%,100%{opacity:.26}
  45%{opacity:.46}
  70%{opacity:.32}
}
@media(prefers-reduced-motion:reduce){
  body::after{animation:none !important;}
}
@media(max-width:900px){
  .note-key-icon{
    left:-30px;
    top:-4px;
    width:30px;
    opacity:.68;
  }
}



/* Key below “The door is yours / Enter”, larger and more intentional. */
.threshold-note-left{
  position:relative !important;
}
.note-key-icon{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  z-index:8 !important;
  display:block !important;
  width:clamp(52px,5vw,86px) !important;
  margin-top:clamp(18px,2.2vh,28px) !important;
  margin-left:clamp(2px,.6vw,10px) !important;
  opacity:.82 !important;
  pointer-events:none !important;
  transform:rotate(-14deg) !important;
  filter:drop-shadow(0 14px 24px rgba(0,0,0,.44)) drop-shadow(0 0 18px rgba(224,194,142,.18)) !important;
  animation:keyBelowTitleFloat 6.5s ease-in-out infinite !important;
}
.note-key-icon img{
  display:block !important;
  width:100% !important;
  height:auto !important;
}
@keyframes keyBelowTitleFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(-14deg)}
  50%{transform:translate3d(4px,-7px,0) rotate(-9deg)}
}
@media(max-width:900px){
  .note-key-icon{
    width:48px !important;
    margin-top:16px !important;
  }
}



/* Make the key float under “The door is yours / Enter” without pushing the text. */
.threshold-note-left{
  position:relative !important;
}
.note-key-icon{
  position:absolute !important;
  left:clamp(4px,.8vw,14px) !important;
  top:calc(100% + 18px) !important;
  z-index:9 !important;
  width:clamp(58px,5.4vw,94px) !important;
  margin:0 !important;
  opacity:.84 !important;
  pointer-events:none !important;
  transform:rotate(-14deg) !important;
  filter:drop-shadow(0 16px 28px rgba(0,0,0,.46)) drop-shadow(0 0 20px rgba(224,194,142,.18)) !important;
  animation:keyFreeFloat 7s ease-in-out infinite !important;
}
.note-key-icon img{
  display:block !important;
  width:100% !important;
  height:auto !important;
}
@keyframes keyFreeFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(-14deg)}
  33%{transform:translate3d(6px,-10px,0) rotate(-8deg)}
  66%{transform:translate3d(-4px,6px,0) rotate(-17deg)}
}
@media(max-width:900px){
  .note-key-icon{
    left:0 !important;
    top:calc(100% + 12px) !important;
    width:52px !important;
  }
}



/* Stronger floating key under “The door is yours / Enter” */
.threshold-note-left{
  position:relative !important;
  overflow:visible !important;
}
.note-key-icon{
  position:absolute !important;
  left:clamp(18px,2.4vw,42px) !important;
  top:calc(100% + 16px) !important;
  z-index:20 !important;
  display:block !important;
  width:clamp(70px,6.4vw,112px) !important;
  margin:0 !important;
  opacity:.88 !important;
  pointer-events:none !important;
  transform-origin:50% 45% !important;
  filter:
    drop-shadow(0 18px 30px rgba(0,0,0,.48))
    drop-shadow(0 0 22px rgba(224,194,142,.22)) !important;
  animation:keyRealFloat 5.8s ease-in-out infinite !important;
  will-change:transform;
}
.note-key-icon::after{
  content:"";
  position:absolute;
  inset:18% 10%;
  border-radius:999px;
  background:rgba(231,199,134,.18);
  filter:blur(16px);
  z-index:-1;
  animation:keyGlowBreath 4.4s ease-in-out infinite;
}
.note-key-icon img{
  display:block !important;
  width:100% !important;
  height:auto !important;
}
@keyframes keyRealFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(-14deg)}
  25%{transform:translate3d(10px,-15px,0) rotate(-6deg)}
  50%{transform:translate3d(2px,-25px,0) rotate(-17deg)}
  75%{transform:translate3d(-8px,-10px,0) rotate(-10deg)}
}
@keyframes keyGlowBreath{
  0%,100%{opacity:.26;transform:scale(.92)}
  50%{opacity:.55;transform:scale(1.12)}
}

/* Tiny lucioles only: small, light, immersive floating lights */
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:45;
  pointer-events:none;
  opacity:.34 !important;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(255,236,188,.42) 0 .55px,rgba(255,236,188,.18) .75px,transparent 1.85px),
    radial-gradient(circle at 28% 74%,rgba(255,246,218,.28) 0 .5px,rgba(255,246,218,.12) .72px,transparent 1.7px),
    radial-gradient(circle at 41% 36%,rgba(224,194,142,.28) 0 .55px,rgba(224,194,142,.11) .76px,transparent 1.8px),
    radial-gradient(circle at 58% 20%,rgba(255,236,188,.34) 0 .55px,rgba(255,236,188,.13) .76px,transparent 1.85px),
    radial-gradient(circle at 74% 66%,rgba(255,246,218,.25) 0 .5px,rgba(255,246,218,.1) .72px,transparent 1.7px),
    radial-gradient(circle at 88% 42%,rgba(224,194,142,.26) 0 .55px,rgba(224,194,142,.1) .76px,transparent 1.8px);
  background-size:300px 300px,410px 410px,480px 480px,350px 350px,460px 460px,560px 560px !important;
  animation:luciolesTinyDrift 42s linear infinite, luciolesTinyGlow 8s ease-in-out infinite !important;
  mix-blend-mode:screen;
}
@keyframes luciolesTinyDrift{
  0%{background-position:0 0,60px 130px,120px 30px,30px 90px,150px 40px,90px 180px}
  100%{background-position:70px -110px,10px -50px,170px -120px,100px -70px,60px -130px,160px -60px}
}
@keyframes luciolesTinyGlow{
  0%,100%{opacity:.22}
  48%{opacity:.38}
  70%{opacity:.28}
}

/* Mobile-friendly + immersive tightening */
html, body{
  max-width:100%;
  overflow-x:hidden;
}
img, video{
  max-width:100%;
  height:auto;
}
.entry,
.entry-portal-layout,
.threshold-experience{
  min-height:100svh !important;
}
.entry-portal-layout{
  height:100svh !important;
}
.threshold-experience{
  overflow:hidden !important;
}
.enter-btn,
.submit,
button,
a{
  -webkit-tap-highlight-color:transparent;
}
.threshold-enter,
.submit{
  min-height:48px;
}

@media(max-width:900px){
  .entry::before{
    inset:10px !important;
  }
  .entry-header{
    left:18px !important;
    right:18px !important;
    top:16px !important;
  }
  .entry-portal-layout{
    min-height:100svh !important;
    height:100svh !important;
  }
  .threshold-experience{
    min-height:100svh !important;
    height:100svh !important;
    padding:74px 16px 78px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .threshold-note-left{
    top:82px !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    width:min(90vw,430px) !important;
    max-width:90vw !important;
    text-align:center !important;
  }
  .threshold-small{
    font-size:7px !important;
    letter-spacing:.24em !important;
    margin-bottom:8px !important;
  }
  .threshold-title{
    font-size:clamp(58px,17vw,84px) !important;
    line-height:.82 !important;
    letter-spacing:-.05em !important;
  }
  .note-key-icon{
    left:50% !important;
    top:calc(100% + 10px) !important;
    width:clamp(62px,17vw,82px) !important;
    opacity:.84 !important;
    animation:keyRealFloatMobile 5.8s ease-in-out infinite !important;
  }
  @keyframes keyRealFloatMobile{
    0%,100%{transform:translate3d(-50%,0,0) rotate(-14deg)}
    25%{transform:translate3d(calc(-50% + 8px),-12px,0) rotate(-6deg)}
    50%{transform:translate3d(calc(-50% + 1px),-20px,0) rotate(-17deg)}
    75%{transform:translate3d(calc(-50% - 7px),-8px,0) rotate(-10deg)}
  }
  .threshold-door{
    width:min(78vw,340px) !important;
    min-width:240px !important;
    height:min(55svh,470px) !important;
    min-height:355px !important;
    margin-top:48px !important;
  }
  .threshold-enter{
    bottom:8.5% !important;
    min-width:min(78vw,205px) !important;
    padding:15px 24px !important;
  }
  .threshold-note-right{
    bottom:74px !important;
    max-width:90vw !important;
    opacity:.92 !important;
  }
  .threshold-prompt{
    font-size:clamp(18px,5.7vw,23px) !important;
    margin-bottom:12px !important;
  }
  .threshold-details{
    gap:6px !important;
  }
  .threshold-details span{
    font-size:6.5px !important;
    letter-spacing:.14em !important;
    padding:7px 8px !important;
  }
  .threshold-bottom{
    bottom:18px !important;
  }
}

@media(max-width:620px){
  .threshold-experience{
    padding-top:68px !important;
    padding-bottom:70px !important;
  }
  .threshold-note-left{
    top:76px !important;
  }
  .threshold-door{
    width:min(82vw,310px) !important;
    height:min(52svh,430px) !important;
    min-height:340px !important;
    margin-top:58px !important;
  }
  .threshold-note-right{
    display:none !important;
  }
  .threshold-enter{
    bottom:9% !important;
    font-size:9px !important;
  }
  .threshold-location{
    font-size:6.5px !important;
    letter-spacing:.18em !important;
  }
}

/* Mobile form and content readability */
@media(max-width:760px){
  section,
  .section,
  .pathways,
  .availability,
  .experience-rebuilt,
  .gallery,
  .destinations,
  .private-request-revamp{
    padding-left:18px !important;
    padding-right:18px !important;
  }
  .display,
  .section-title,
  .request-copy h2{
    font-size:clamp(34px,10vw,54px) !important;
    line-height:1.04 !important;
  }
  .body-copy,
  .request-copy p,
  .private-request-revamp p{
    font-size:16px !important;
    line-height:1.72 !important;
  }
  .private-request-revamp .request-frame{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }
  #privateRequestForm,
  .private-request-revamp .request-form-panel{
    max-height:none !important;
    overflow:visible !important;
    padding:24px 18px 30px !important;
  }
  #privateRequestForm .form-grid{
    grid-template-columns:1fr !important;
    gap:26px !important;
    overflow:visible !important;
    max-height:none !important;
  }
  #privateRequestForm .field,
  #privateRequestForm .field.full,
  #privateRequestForm .check,
  #privateRequestForm .submit-row-fixed{
    grid-column:1 / -1 !important;
  }
  #privateRequestForm input,
  #privateRequestForm textarea,
  #privateRequestForm select{
    font-size:17px !important;
    min-height:48px !important;
  }
  #privateRequestForm textarea{
    min-height:132px !important;
  }
  #privateRequestForm .submit{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100% !important;
  }
  .date-calendar-popover{
    left:14px !important;
    right:14px !important;
    width:auto !important;
    max-height:78svh !important;
    overflow:auto !important;
    padding:18px !important;
  }
  .date-calendar-title{
    font-size:24px !important;
  }
  .date-calendar-day{
    height:44px !important;
    font-size:15px !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .note-key-icon,
  body::after{
    animation:none !important;
  }
}



/* Make the key visibly move: float, sway, and gently drift. */
.note-key-icon{
  animation:keyMoveDrift 6.2s ease-in-out infinite !important;
  will-change:transform !important;
}
.note-key-icon::after{
  animation:keyGlowPulse 4.6s ease-in-out infinite !important;
}
@keyframes keyMoveDrift{
  0%{
    transform:translate3d(0,0,0) rotate(-14deg) scale(1);
  }
  20%{
    transform:translate3d(10px,-12px,0) rotate(-6deg) scale(1.02);
  }
  40%{
    transform:translate3d(2px,-26px,0) rotate(-18deg) scale(1.04);
  }
  60%{
    transform:translate3d(-12px,-10px,0) rotate(-9deg) scale(1.01);
  }
  80%{
    transform:translate3d(-4px,6px,0) rotate(-16deg) scale(.99);
  }
  100%{
    transform:translate3d(0,0,0) rotate(-14deg) scale(1);
  }
}
@keyframes keyGlowPulse{
  0%,100%{opacity:.24;transform:scale(.9)}
  50%{opacity:.58;transform:scale(1.16)}
}

@media(max-width:900px){
  .note-key-icon{
    animation:keyMoveDriftMobile 5.8s ease-in-out infinite !important;
  }
  @keyframes keyMoveDriftMobile{
    0%{
      transform:translate3d(-50%,0,0) rotate(-14deg) scale(1);
    }
    20%{
      transform:translate3d(calc(-50% + 8px),-10px,0) rotate(-7deg) scale(1.02);
    }
    45%{
      transform:translate3d(calc(-50% + 2px),-18px,0) rotate(-17deg) scale(1.04);
    }
    70%{
      transform:translate3d(calc(-50% - 8px),-6px,0) rotate(-9deg) scale(1.01);
    }
    100%{
      transform:translate3d(-50%,0,0) rotate(-14deg) scale(1);
    }
  }
}



/* 1) Stay-on-page thank-you state */
.form-success{
  margin-top:24px !important;
  padding:26px 24px !important;
  border:1px solid rgba(224,194,142,.32) !important;
  background:linear-gradient(135deg,rgba(255,244,220,.095),rgba(255,244,220,.04)) !important;
  color:#f3e7d8 !important;
  box-shadow:0 18px 50px rgba(0,0,0,.26) !important;
  opacity:1 !important;
  transform:none !important;
}
.form-success[hidden]{
  display:none !important;
}
.form-success strong{
  display:block !important;
  font-family:var(--serif) !important;
  font-size:clamp(29px,3vw,44px) !important;
  font-weight:500 !important;
  line-height:1.05 !important;
  color:#f4dfaa !important;
  margin-bottom:10px !important;
}
.form-success p{
  margin:0 !important;
  color:rgba(246,237,222,.84) !important;
  font-size:16px !important;
  line-height:1.7 !important;
}
#privateRequestForm.is-submitted .form-grid{
  opacity:.24 !important;
  pointer-events:none !important;
  transition:opacity .35s ease !important;
}
#privateRequestForm .submit.is-loading{
  opacity:.72 !important;
  cursor:wait !important;
}

/* 2) Calendar: larger, mobile-safe, today-onwards only */
.request-form-panel #date{
  cursor:pointer !important;
  font-size:20px !important;
  caret-color:transparent !important;
}
.date-calendar-popover{
  position:fixed;
  z-index:99999;
  width:min(92vw,460px);
  padding:24px;
  border:1px solid rgba(224,194,142,.38);
  background:linear-gradient(145deg,rgba(23,16,11,.985),rgba(8,7,5,.985));
  box-shadow:0 34px 100px rgba(0,0,0,.58);
  color:#f4eadf;
  display:none;
  max-height:82svh;
  overflow:auto;
}
.date-calendar-popover.is-open{
  display:block;
}
.date-calendar-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:20px;
}
.date-calendar-title{
  font:500 28px/1 var(--serif);
  color:#f3e7d8;
  text-transform:capitalize;
}
.date-calendar-nav{
  display:flex;
  gap:8px;
}
.date-calendar-nav button{
  width:46px;
  height:46px;
  border:1px solid rgba(224,194,142,.28);
  background:rgba(255,244,220,.05);
  color:#e8c98b;
  font-size:24px;
  cursor:pointer;
}
.date-calendar-nav button:hover:not(:disabled){
  background:rgba(224,194,142,.14);
}
.date-calendar-nav button:disabled{
  opacity:.28;
  cursor:not-allowed;
}
.date-calendar-week,
.date-calendar-days{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:9px;
}
.date-calendar-week span{
  text-align:center;
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#cda86a;
  padding-bottom:7px;
}
.date-calendar-day{
  height:52px;
  border:1px solid rgba(224,194,142,.15);
  background:rgba(255,244,220,.04);
  color:#f4eadf;
  font-size:17px;
  cursor:pointer;
}
.date-calendar-day:hover:not(:disabled){
  border-color:rgba(224,194,142,.48);
  background:rgba(224,194,142,.13);
}
.date-calendar-day.is-muted{
  opacity:.28;
}
.date-calendar-day.is-disabled,
.date-calendar-day:disabled{
  opacity:.16 !important;
  cursor:not-allowed !important;
  color:rgba(244,234,223,.34) !important;
  background:rgba(255,255,255,.015) !important;
  border-color:rgba(224,194,142,.08) !important;
}
.date-calendar-day.is-selected{
  background:linear-gradient(135deg,#e9c980,#c99e59);
  color:#120b06;
  border-color:transparent;
  font-weight:700;
  opacity:1 !important;
}
.date-calendar-actions{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:16px;
  gap:12px;
}
.date-calendar-actions button{
  border:1px solid rgba(224,194,142,.24);
  background:rgba(255,244,220,.04);
  color:#e8c98b;
  padding:12px 14px;
  font-size:10px;
  letter-spacing:.22em;
  text-transform:uppercase;
  cursor:pointer;
}
.date-calendar-actions button:hover{
  background:rgba(224,194,142,.12);
}

/* 3) Mobile safety pass */
html, body{
  max-width:100% !important;
  overflow-x:hidden !important;
}
img, video, svg{
  max-width:100%;
}
button, a, input, textarea, select{
  -webkit-tap-highlight-color:transparent;
}
@media(max-width:760px){
  .date-calendar-popover{
    left:14px !important;
    right:14px !important;
    width:auto !important;
    padding:18px !important;
    max-height:78svh !important;
  }
  .date-calendar-title{
    font-size:24px !important;
  }
  .date-calendar-nav button{
    width:42px !important;
    height:42px !important;
  }
  .date-calendar-week,
  .date-calendar-days{
    gap:7px !important;
  }
  .date-calendar-day{
    height:44px !important;
    font-size:15px !important;
  }
  #privateRequestForm,
  .private-request-revamp .request-form-panel{
    max-height:none !important;
    overflow:visible !important;
  }
  #privateRequestForm .form-grid{
    grid-template-columns:1fr !important;
    max-height:none !important;
    overflow:visible !important;
  }
  #privateRequestForm .field,
  #privateRequestForm .field.full,
  #privateRequestForm .check,
  #privateRequestForm .submit-row-fixed,
  #privateRequestForm .form-success{
    grid-column:1 / -1 !important;
  }
  #privateRequestForm input,
  #privateRequestForm textarea,
  #privateRequestForm select{
    font-size:16px !important;
  }
  #privateRequestForm textarea{
    min-height:132px !important;
  }
  #privateRequestForm .submit{
    min-height:56px !important;
    width:100% !important;
  }
  .form-success{
    padding:22px 18px !important;
  }
}



/* The key wrapper had a locked transform, so the motion is applied to the key image itself. */
.note-key-icon{
  overflow:visible !important;
  animation:none !important;
}
.note-key-icon img{
  animation:keyImageVisibleFloat 4.8s ease-in-out infinite !important;
  transform-origin:50% 42% !important;
  will-change:transform !important;
}
.note-key-icon::after{
  animation:keyGlowVisibleFloat 4.8s ease-in-out infinite !important;
}
@keyframes keyImageVisibleFloat{
  0%,100%{
    transform:translate3d(0,0,0) rotate(-14deg) scale(1);
  }
  20%{
    transform:translate3d(14px,-14px,0) rotate(-5deg) scale(1.03);
  }
  45%{
    transform:translate3d(4px,-30px,0) rotate(-20deg) scale(1.05);
  }
  70%{
    transform:translate3d(-14px,-10px,0) rotate(-7deg) scale(1.02);
  }
  86%{
    transform:translate3d(-5px,6px,0) rotate(-16deg) scale(.99);
  }
}
@keyframes keyGlowVisibleFloat{
  0%,100%{
    opacity:.24;
    transform:translate3d(0,0,0) scale(.92);
  }
  45%{
    opacity:.56;
    transform:translate3d(3px,-16px,0) scale(1.18);
  }
  70%{
    opacity:.36;
    transform:translate3d(-6px,-8px,0) scale(1.04);
  }
}
@media(max-width:900px){
  .note-key-icon img{
    animation:keyImageVisibleFloatMobile 4.8s ease-in-out infinite !important;
  }
  @keyframes keyImageVisibleFloatMobile{
    0%,100%{
      transform:translate3d(0,0,0) rotate(-14deg) scale(1);
    }
    24%{
      transform:translate3d(10px,-10px,0) rotate(-6deg) scale(1.03);
    }
    50%{
      transform:translate3d(2px,-22px,0) rotate(-19deg) scale(1.05);
    }
    76%{
      transform:translate3d(-10px,-7px,0) rotate(-8deg) scale(1.02);
    }
  }
}



/* Softer, more elegant key movement. */
.note-key-icon{
  animation:none !important;
  overflow:visible !important;
}
.note-key-icon img{
  animation:keySubtleFloat 7.8s ease-in-out infinite !important;
  transform-origin:50% 42% !important;
  will-change:transform !important;
}
.note-key-icon::after{
  animation:keySubtleGlow 6.8s ease-in-out infinite !important;
}
@keyframes keySubtleFloat{
  0%,100%{
    transform:translate3d(0,0,0) rotate(-14deg) scale(1);
  }
  35%{
    transform:translate3d(5px,-7px,0) rotate(-11deg) scale(1.01);
  }
  70%{
    transform:translate3d(-4px,-3px,0) rotate(-16deg) scale(1);
  }
}
@keyframes keySubtleGlow{
  0%,100%{
    opacity:.22;
    transform:translate3d(0,0,0) scale(.95);
  }
  50%{
    opacity:.42;
    transform:translate3d(1px,-4px,0) scale(1.06);
  }
}
@media(max-width:900px){
  .note-key-icon img{
    animation:keySubtleFloatMobile 7.8s ease-in-out infinite !important;
  }
  @keyframes keySubtleFloatMobile{
    0%,100%{
      transform:translate3d(0,0,0) rotate(-14deg) scale(1);
    }
    35%{
      transform:translate3d(4px,-6px,0) rotate(-11deg) scale(1.01);
    }
    70%{
      transform:translate3d(-3px,-2px,0) rotate(-16deg) scale(1);
    }
  }
}



/* Keep the selective availability note contained on mobile. */
@media(max-width:760px){
  [data-i18n="requestDiscretionNote"],
  .request-discretion-note,
  .request-note,
  .request-copy .micro,
  .private-request-revamp .micro{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
    hyphens:auto !important;
    padding:16px 16px !important;
    margin:18px 0 0 !important;
    border:1px solid rgba(224,194,142,.22) !important;
    background:rgba(255,244,220,.045) !important;
    line-height:1.55 !important;
    font-size:11px !important;
    letter-spacing:.12em !important;
  }
}

/* Mobile first page: stabilize the door scene so it does not feel scattered. */
@media(max-width:760px){
  .entry,
  .entry-portal-layout,
  .threshold-experience{
    min-height:100svh !important;
    height:100svh !important;
    max-height:100svh !important;
    overflow:hidden !important;
  }

  .threshold-experience{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 18px !important;
  }

  .entry-header{
    top:16px !important;
    left:18px !important;
    right:18px !important;
    z-index:30 !important;
  }

  .threshold-note-left{
    position:absolute !important;
    top:92px !important;
    left:50% !important;
    right:auto !important;
    width:min(88vw,360px) !important;
    max-width:88vw !important;
    transform:translateX(-50%) !important;
    text-align:center !important;
    z-index:18 !important;
  }

  .threshold-small{
    font-size:7px !important;
    letter-spacing:.22em !important;
    margin-bottom:8px !important;
  }

  .threshold-title{
    font-size:clamp(50px,15.5vw,72px) !important;
    line-height:.86 !important;
    letter-spacing:-.055em !important;
  }

  .note-key-icon{
    left:50% !important;
    top:calc(100% + 10px) !important;
    width:clamp(48px,14vw,66px) !important;
    opacity:.8 !important;
    z-index:19 !important;
  }

  .threshold-door{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:min(74vw,292px) !important;
    min-width:230px !important;
    height:min(50svh,390px) !important;
    min-height:318px !important;
    margin:122px auto 0 !important;
    z-index:10 !important;
  }

  .threshold-enter{
    bottom:9.5% !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    min-width:min(68vw,185px) !important;
    padding:14px 24px !important;
    font-size:9px !important;
    letter-spacing:.22em !important;
    z-index:22 !important;
  }

  .threshold-note-right{
    display:none !important;
  }

  .threshold-bottom{
    bottom:16px !important;
    left:50% !important;
    width:100% !important;
    transform:translateX(-50%) !important;
    text-align:center !important;
    z-index:20 !important;
  }

  .threshold-location{
    font-size:6.5px !important;
    letter-spacing:.18em !important;
  }

  .threshold-curtain,
  .threshold-aura,
  .threshold-floor,
  .threshold-rays{
    opacity:.45 !important;
  }
}

@media(max-width:390px){
  .threshold-note-left{
    top:84px !important;
  }
  .threshold-title{
    font-size:clamp(46px,14.5vw,62px) !important;
  }
  .threshold-door{
    width:min(72vw,270px) !important;
    min-width:215px !important;
    height:min(48svh,360px) !important;
    min-height:300px !important;
    margin-top:118px !important;
  }
  .note-key-icon{
    width:46px !important;
  }
}



/*
  MOBILE DOOR FINAL FIX
  This avoids guessing with -56%, -54%, etc.
  The door is anchored to the exact middle of the viewport and its own geometry is rebuilt symmetrically.
*/
@media(max-width:760px){
  .entry,
  .entry-portal-layout,
  .threshold-experience{
    width:100% !important;
    max-width:100% !important;
    min-height:100svh !important;
    height:100svh !important;
    max-height:100svh !important;
    overflow:hidden !important;
  }

  .threshold-experience{
    position:relative !important;
    padding:0 !important;
    display:block !important;
  }

  .entry-header{
    top:16px !important;
    left:18px !important;
    right:18px !important;
    z-index:40 !important;
  }

  .threshold-note-left{
    position:absolute !important;
    top:92px !important;
    left:50% !important;
    right:auto !important;
    width:min(88vw,360px) !important;
    max-width:88vw !important;
    transform:translateX(-50%) !important;
    text-align:center !important;
    z-index:30 !important;
  }

  .threshold-small{
    font-size:7px !important;
    letter-spacing:.22em !important;
    margin-bottom:8px !important;
  }

  .threshold-title{
    font-size:clamp(50px,15vw,70px) !important;
    line-height:.86 !important;
    letter-spacing:-.055em !important;
  }

  .note-key-icon{
    left:50% !important;
    top:calc(100% + 9px) !important;
    width:clamp(42px,11vw,56px) !important;
    opacity:.78 !important;
    z-index:31 !important;
  }

  /* TRUE CENTER ANCHOR */
  .threshold-door{
    position:absolute !important;
    left:50% !important;
    right:auto !important;
    top:50% !important;
    bottom:auto !important;
    margin:0 !important;
    width:min(70vw,270px) !important;
    min-width:218px !important;
    height:min(43svh,348px) !important;
    min-height:292px !important;
    transform:translate(-50%, -33%) !important;
    transform-origin:center center !important;
    z-index:12 !important;
    overflow:visible !important;
  }

  /*
    Rebuild the mobile door shape symmetrically inside the centered container.
    This prevents the visual mass from leaning left or right.
  */
  .threshold-door .door-arch{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    left:0 !important;
    right:0 !important;
    transform:none !important;
    border-radius:999px 999px 14px 14px !important;
  }

  .threshold-door .door-panel{
    position:absolute !important;
    top:0 !important;
    bottom:0 !important;
    width:50% !important;
    height:100% !important;
    transform:none !important;
  }

  .threshold-door .door-panel-left{
    left:0 !important;
    right:auto !important;
    border-radius:999px 0 10px 10px !important;
  }

  .threshold-door .door-panel-right{
    right:0 !important;
    left:auto !important;
    border-radius:0 999px 10px 10px !important;
  }

  .threshold-door .door-slit{
    position:absolute !important;
    left:50% !important;
    right:auto !important;
    top:0 !important;
    bottom:0 !important;
    width:1px !important;
    height:100% !important;
    transform:translateX(-50%) !important;
  }

  .threshold-door .door-shadow{
    position:absolute !important;
    inset:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    height:100% !important;
    transform:none !important;
    border-radius:999px 999px 14px 14px !important;
  }

  .threshold-door .door-handle{
    position:absolute !important;
    top:58% !important;
    width:10px !important;
    height:50px !important;
    transform:translateY(-50%) !important;
    border-radius:999px !important;
  }

  .threshold-door .door-handle-left{
    left:calc(50% - 28px) !important;
    right:auto !important;
  }

  .threshold-door .door-handle-right{
    right:calc(50% - 28px) !important;
    left:auto !important;
  }

  /* Button lowered but centered to the viewport, not to any shifted door */
  .threshold-enter{
    position:absolute !important;
    left:50% !important;
    right:auto !important;
    bottom:4.8% !important;
    transform:translateX(-50%) !important;
    min-width:min(64vw,170px) !important;
    padding:13px 22px !important;
    font-size:8.5px !important;
    letter-spacing:.22em !important;
    z-index:28 !important;
  }

  .threshold-note-right{
    display:none !important;
  }

  .threshold-bottom{
    position:absolute !important;
    bottom:17px !important;
    left:50% !important;
    right:auto !important;
    width:100% !important;
    transform:translateX(-50%) !important;
    text-align:center !important;
    z-index:24 !important;
  }

  .threshold-location{
    font-size:6.5px !important;
    letter-spacing:.18em !important;
  }
}

@media(max-width:390px){
  .threshold-note-left{
    top:88px !important;
  }

  .threshold-title{
    font-size:clamp(47px,14vw,62px) !important;
  }

  .threshold-door{
    width:min(68vw,252px) !important;
    min-width:208px !important;
    height:min(41svh,326px) !important;
    min-height:278px !important;
    transform:translate(-50%, -32%) !important;
  }

  .note-key-icon{
    width:40px !important;
    top:calc(100% + 8px) !important;
  }

  .threshold-enter{
    bottom:4.5% !important;
    min-width:min(62vw,158px) !important;
    padding:12px 18px !important;
  }

  .threshold-door .door-handle{
    height:46px !important;
  }

  .threshold-door .door-handle-left{
    left:calc(50% - 25px) !important;
  }

  .threshold-door .door-handle-right{
    right:calc(50% - 25px) !important;
  }
}



/*
  Mobile scroll fix:
  - Before entering: only the door page is locked/contained.
  - After entering: body scroll is fully restored so Le Salon and the rest of the site continue.
*/
@media(max-width:760px){
  html,
  body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  body.entry-is-active{
    overflow:hidden !important;
    height:100svh !important;
    max-height:100svh !important;
  }

  body:not(.entry-is-active){
    overflow-y:auto !important;
    height:auto !important;
    max-height:none !important;
  }

  body.entry-is-active .entry{
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:100svh !important;
    min-height:100svh !important;
    max-height:100svh !important;
    overflow:hidden !important;
    z-index:9998 !important;
  }

  body:not(.entry-is-active) .entry{
    pointer-events:none !important;
  }

  body.entry-is-active .entry-portal-layout,
  body.entry-is-active .threshold-experience{
    height:100svh !important;
    min-height:100svh !important;
    max-height:100svh !important;
    overflow:hidden !important;
  }

  body:not(.entry-is-active) .entry-portal-layout,
  body:not(.entry-is-active) .threshold-experience{
    height:auto !important;
    max-height:none !important;
  }

  /* Keep the floating key centered on mobile only while the door page is active. */
  body.entry-is-active .note-key-icon{
    left:50% !important;
    right:auto !important;
    top:calc(100% + 9px) !important;
    width:clamp(40px,10.8vw,54px) !important;
    margin:0 !important;
    opacity:.8 !important;
    transform:translateX(-50%) !important;
    transform-origin:center center !important;
  }

  body.entry-is-active .note-key-icon img{
    transform-origin:center center !important;
    animation:keySubtleFloatMobileCentered 7.8s ease-in-out infinite !important;
  }

  @keyframes keySubtleFloatMobileCentered{
    0%,100%{transform:translate3d(0,0,0) rotate(-14deg) scale(1);}
    35%{transform:translate3d(3px,-5px,0) rotate(-11deg) scale(1.01);}
    70%{transform:translate3d(-3px,-2px,0) rotate(-16deg) scale(1);}
  }
}



.event-presence-cta{background:#0a0806;padding:clamp(58px,8vw,108px) clamp(20px,6vw,80px)}
.event-presence-cta .gallery-footer-cta{margin:0 auto}
.event-presence-cta .section-label{margin-bottom:18px}



/* Slightly larger private-request copy for improved readability */
.private-request-revamp .request-intro-panel .body-copy {
  font-size: clamp(17px, 1.12vw, 20px) !important;
  line-height: 1.68 !important;
}
.private-request-revamp .request-step strong {
  font-size: clamp(21px, 1.45vw, 25px) !important;
  line-height: 1.12 !important;
}
.private-request-revamp .request-step p {
  font-size: clamp(15px, 1vw, 17px) !important;
  line-height: 1.58 !important;
}
@media (max-width: 700px) {
  .private-request-revamp .request-intro-panel .body-copy {
    font-size: 16.5px !important;
    line-height: 1.65 !important;
  }
  .private-request-revamp .request-step strong {
    font-size: 20px !important;
  }
  .private-request-revamp .request-step p {
    font-size: 14.5px !important;
    line-height: 1.55 !important;
  }
}



/* More legible supporting copy beneath experience titles */
.experience-detail .detail-item span {
  font-size: clamp(13px, .92vw, 16px) !important;
  line-height: 1.62 !important;
}

/* Stronger event CTA visibility and hover state */
.event-presence-cta .event-form-trigger {
  border: 1px solid rgba(214,177,105,.62) !important;
  cursor: pointer;
  transition: background .28s ease, color .28s ease, border-color .28s ease, box-shadow .28s ease, transform .28s ease !important;
}
.event-presence-cta .event-form-trigger:hover,
.event-presence-cta .event-form-trigger:focus-visible {
  background: #d6b169 !important;
  color: #090705 !important;
  border-color: #f0d89b !important;
  box-shadow: 0 0 0 1px rgba(240,216,155,.35), 0 12px 34px rgba(214,177,105,.24) !important;
  transform: translateY(-2px);
}

.event-inquiry-modal[hidden] { display:none !important; }
.event-inquiry-modal { position:fixed; inset:0; z-index:10000; display:grid; place-items:center; padding:20px; }
.event-inquiry-backdrop { position:absolute; inset:0; background:rgba(3,2,1,.82); backdrop-filter:blur(8px); }
.event-inquiry-dialog { position:relative; width:min(680px,100%); max-height:min(88vh,820px); overflow:auto; padding:clamp(30px,5vw,58px); background:linear-gradient(145deg,#17110d,#090705); border:1px solid rgba(214,177,105,.34); box-shadow:0 30px 90px rgba(0,0,0,.62); }
.event-inquiry-dialog h2 { margin:12px 0 14px; font:500 clamp(38px,5vw,60px)/.96 var(--serif); }
.event-inquiry-intro { color:var(--muted); font-size:clamp(15px,1.15vw,18px); line-height:1.65; margin:0 0 28px; }
.event-inquiry-close { position:absolute; top:14px; right:17px; width:42px; height:42px; border:1px solid rgba(214,177,105,.28); background:transparent; color:#f1e8dd; font-size:28px; line-height:1; cursor:pointer; }
.event-inquiry-close:hover { background:#d6b169; color:#090705; }
.event-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.event-form-grid .full { grid-column:1/-1; }
.event-inquiry-form .field label { display:block; margin-bottom:8px; font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--gold-light); }
.event-inquiry-form input,.event-inquiry-form textarea { width:100%; border:1px solid rgba(214,177,105,.25); background:#0c0907; color:#f3ece4; padding:14px 15px; font:inherit; }
.event-inquiry-form textarea { min-height:145px; resize:vertical; }
.event-inquiry-form input:focus,.event-inquiry-form textarea:focus { outline:none; border-color:#d6b169; box-shadow:0 0 0 2px rgba(214,177,105,.12); }
.event-inquiry-submit { width:100%; margin-top:20px; }
.event-inquiry-success { text-align:center; padding:28px 0 4px; }
.event-inquiry-success h3 { font:500 clamp(38px,5vw,56px)/1 var(--serif); margin:0 0 14px; }
.event-inquiry-success p { color:var(--muted); font-size:17px; line-height:1.6; margin:0 auto 25px; max-width:460px; }
body.event-modal-open { overflow:hidden !important; }
@media(max-width:650px){
  .event-form-grid{grid-template-columns:1fr}
  .event-form-grid .full{grid-column:auto}
  .event-inquiry-dialog{padding:32px 22px 26px}
  .experience-detail .detail-item span{font-size:14px !important}
}



.request-step p{
  font-size:13px !important;
  line-height:1.52 !important;
}
@media (max-width:700px){
  .request-step p{font-size:12.5px !important;}
}



/* Client feedback v10: stronger readability, corrected bilingual gallery labels, and Montreal event wording. */
.private-request-revamp{display:block !important;}
.request-confidence-note{
  position:relative;
  z-index:1;
  width:min(980px,100%);
  margin:0 auto clamp(52px,6vw,84px);
  padding:0 clamp(8px,2vw,24px);
  display:grid;
  justify-items:center;
  text-align:center;
}
.request-confidence-rule{
  width:clamp(54px,7vw,92px);
  height:1px;
  margin-bottom:clamp(22px,2.4vw,32px);
  background:linear-gradient(90deg,transparent,rgba(224,194,142,.82),transparent);
}
.private-request-revamp .request-confidence-note p{
  max-width:850px;
  margin:0;
  color:#eadfce;
  font:italic 500 clamp(23px,2.25vw,34px)/1.42 var(--serif) !important;
  letter-spacing:.005em;
  text-wrap:balance;
}

/* Supporting copy: slightly larger without changing the editorial hierarchy. */
.body-copy{
  font-size:clamp(16px,1.08vw,18px) !important;
  line-height:1.82 !important;
}
.section-label{
  font-size:11px !important;
  line-height:1.48 !important;
}
.nav a,
.language-label,
.lang-btn{
  font-size:10.5px !important;
}
.entry-intro{
  font-size:14px !important;
  line-height:1.8 !important;
}
.entry-atmosphere span,
.entry-hint,
.entry-location{
  font-size:10px !important;
  line-height:1.58 !important;
}
.path-card p{
  font-size:15px !important;
  line-height:1.74 !important;
}
.arrow-link{
  font-size:12.5px !important;
  line-height:1.48 !important;
}
#experiences.experience-rebuilt .experience-tab{
  font-size:11px !important;
  line-height:1.48 !important;
}
#experiences #experienceText,
#experiences.experience-rebuilt #experienceText{
  font-size:16px !important;
  line-height:1.74 !important;
}
#experiences.experience-rebuilt .experience-detail .detail-item span{
  font-size:clamp(16px,1.04vw,18px) !important;
  line-height:1.65 !important;
}
.city-card small{
  font-size:11.5px !important;
  line-height:1.48 !important;
}
.footer-note{
  font-size:12px !important;
  line-height:1.8 !important;
}

/* Private request: resolve older rules that reduced the copy again. */
.private-request-revamp .request-intro-panel .body-copy{
  font-size:clamp(18px,1.2vw,21px) !important;
  line-height:1.68 !important;
}
.private-request-revamp .request-step strong{
  font-size:clamp(22px,1.48vw,26px) !important;
  line-height:1.16 !important;
}
.private-request-revamp .request-step p{
  font-size:clamp(16px,1.04vw,18px) !important;
  line-height:1.62 !important;
}
.private-request-revamp .request-discretion-note{
  font-size:16px !important;
  line-height:1.62 !important;
}
.private-request-revamp .form-kicker,
.private-request-revamp .form-time{
  font-size:11.5px !important;
  line-height:1.48 !important;
}
.private-request-revamp .request-form-panel .form-intro{
  font-size:16px !important;
  line-height:1.65 !important;
}
.private-request-revamp .request-form-panel .form-guidance{
  font-size:14px !important;
  line-height:1.55 !important;
}
.private-request-revamp .request-form-panel .field label{
  font-size:11px !important;
  line-height:1.48 !important;
}
.private-request-revamp .request-form-panel input,
.private-request-revamp .request-form-panel select,
.private-request-revamp .request-form-panel textarea{
  font-size:16px !important;
  line-height:1.5 !important;
}
.private-request-revamp .request-form-panel .check{
  font-size:14px !important;
  line-height:1.55 !important;
}
.private-request-revamp .submit{
  font-size:10.5px !important;
  line-height:1.4 !important;
}

@media(max-width:900px){
  .body-copy{font-size:16.5px !important;line-height:1.8 !important;}
  .nav a{font-size:13.5px !important;}
  .request-confidence-note{margin-bottom:54px;padding-inline:0;}
  .private-request-revamp .request-confidence-note p{font-size:clamp(22px,5.8vw,29px) !important;line-height:1.4 !important;}
  #experiences #experienceText,
  #experiences.experience-rebuilt #experienceText{font-size:16px !important;}
  .city-card small{font-size:11px !important;}
}
@media(max-width:620px){
  .entry-intro{font-size:13.5px !important;}
  .entry-atmosphere span,.entry-hint,.entry-location{font-size:9.5px !important;}
  .section-label{font-size:10.5px !important;letter-spacing:.32em !important;}
  .path-card p{font-size:15.5px !important;}
  .private-request-revamp .request-intro-panel .body-copy{font-size:17.5px !important;}
  .private-request-revamp .request-step strong{font-size:21px !important;}
  .private-request-revamp .request-step p{font-size:16px !important;line-height:1.62 !important;}
  .private-request-revamp .request-discretion-note{font-size:15.5px !important;}
  .private-request-revamp .request-form-panel .form-intro{font-size:15.5px !important;}
  .private-request-revamp .request-form-panel .form-guidance{font-size:13.5px !important;}
  .private-request-revamp .request-form-panel .field label{font-size:10.5px !important;}
  .footer-note{font-size:12px !important;}
}



/* Client feedback v11: stronger statement, content-safe experiences, aligned process, elevated confidentiality note. */

/* 1) Make the destination statement subtitle easier to read without losing its editorial restraint. */
.statement small{
  max-width:920px !important;
  margin:-6px auto 42px !important;
  font-size:clamp(13px,1.05vw,16px) !important;
  line-height:1.65 !important;
  letter-spacing:.19em !important;
  font-weight:600 !important;
  text-wrap:balance !important;
}

/* 2) Experiences: preserve the larger copy and give it enough physical space. */
@media (min-width:1241px){
  #experiences.experience-rebuilt .experience-flow{
    grid-template-columns:clamp(235px,19vw,300px) minmax(0,1fr) !important;
    gap:clamp(18px,2vw,30px) !important;
    align-items:stretch !important;
  }
  #experiences.experience-rebuilt .experience-tabs,
  #experiences.experience-rebuilt .experience-stage{
    min-height:clamp(780px,56vw,900px) !important;
    height:auto !important;
  }
  #experiences.experience-rebuilt .experience-stage{
    grid-template-columns:minmax(0,.76fr) minmax(540px,1.24fr) !important;
    overflow:hidden !important;
  }
  #experiences.experience-rebuilt .experience-detail{
    justify-content:center !important;
    padding:clamp(42px,4vw,62px) clamp(42px,4.2vw,68px) !important;
  }
  #experiences.experience-rebuilt .detail-list{
    column-gap:clamp(26px,2.5vw,42px) !important;
    margin-top:clamp(24px,2.4vw,34px) !important;
  }
  #experiences.experience-rebuilt .detail-item{
    padding-top:16px !important;
    margin-bottom:20px !important;
  }
}
@media (min-width:901px) and (max-width:1240px){
  #experiences.experience-rebuilt .experience-stage{
    grid-template-columns:minmax(0,.78fr) minmax(450px,1.22fr) !important;
    min-height:780px !important;
    height:auto !important;
    overflow:hidden !important;
  }
  #experiences.experience-rebuilt .experience-detail{
    justify-content:center !important;
    padding:42px 44px !important;
  }
}
@media (max-width:900px){
  #experiences.experience-rebuilt .experience-stage{
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #experiences.experience-rebuilt .experience-detail{
    height:auto !important;
    overflow:visible !important;
  }
}

/* 3) Request process: 01 and 02 above; 03 spans their full combined width. */
@media (min-width:701px){
  .private-request-revamp .request-process{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
  }
  .private-request-revamp .request-step{
    min-height:154px !important;
    height:100% !important;
    padding:20px 20px !important;
  }
  .private-request-revamp .request-step:nth-child(3){
    grid-column:1 / -1 !important;
    min-height:0 !important;
    height:auto !important;
    align-items:center !important;
  }
  .private-request-revamp .request-step:nth-child(3) > div{
    min-width:0 !important;
    display:block !important;
  }
  .private-request-revamp .request-step:nth-child(3) strong{
    margin:0 0 6px !important;
  }
}
@media (max-width:700px){
  .private-request-revamp .request-process{
    grid-template-columns:1fr !important;
  }
  .private-request-revamp .request-step{
    min-height:0 !important;
    height:auto !important;
  }
  .private-request-revamp .request-step:nth-child(3){
    grid-column:auto !important;
  }
  .private-request-revamp .request-step:nth-child(3) > div{
    display:block !important;
  }
}

/* 4) Make the confidentiality promise more visible through a quiet editorial frame. */
.private-request-revamp .request-confidence-note{
  position:relative !important;
  width:min(1040px,100%) !important;
  margin:0 auto clamp(58px,6vw,88px) !important;
  padding:clamp(34px,4vw,52px) clamp(28px,5.5vw,76px) !important;
  border:1px solid rgba(224,194,142,.30) !important;
  background:
    radial-gradient(circle at 50% 0%,rgba(224,194,142,.13),transparent 46%),
    linear-gradient(135deg,rgba(20,14,10,.78),rgba(7,5,4,.58)) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.24),inset 0 0 0 1px rgba(255,255,255,.018) !important;
  overflow:hidden !important;
}
.private-request-revamp .request-confidence-note::before{
  content:"✦" !important;
  display:block !important;
  margin-bottom:18px !important;
  color:#e2c38b !important;
  font-size:17px !important;
  line-height:1 !important;
  letter-spacing:0 !important;
}
.private-request-revamp .request-confidence-note::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  bottom:0 !important;
  width:36% !important;
  height:1px !important;
  transform:translateX(-50%) !important;
  background:linear-gradient(90deg,transparent,rgba(224,194,142,.78),transparent) !important;
}
.private-request-revamp .request-confidence-rule{
  display:none !important;
}
.private-request-revamp .request-confidence-note p{
  max-width:900px !important;
  color:#f3e8d8 !important;
  font:italic 500 clamp(25px,2.35vw,36px)/1.42 var(--serif) !important;
  text-shadow:0 8px 30px rgba(0,0,0,.30) !important;
}
@media (max-width:620px){
  .statement small{
    max-width:31rem !important;
    margin-top:0 !important;
    font-size:13px !important;
    line-height:1.72 !important;
    letter-spacing:.14em !important;
  }
  .private-request-revamp .request-confidence-note{
    padding:30px 22px 34px !important;
    margin-bottom:54px !important;
  }
  .private-request-revamp .request-confidence-note p{
    font-size:clamp(22px,6vw,28px) !important;
    line-height:1.42 !important;
  }
}



/* Final isolated fix: allow step 03 to grow with its French copy and keep the note fully below it. */
.private-request-revamp .request-process{
  height:auto !important;
  min-height:0 !important;
  grid-auto-rows:auto !important;
  align-items:stretch !important;
  overflow:visible !important;
}
.private-request-revamp .request-step,
.private-request-revamp .request-step:nth-child(3){
  height:auto !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}
.private-request-revamp .request-step:nth-child(3){
  min-height:max-content !important;
  align-items:start !important;
  padding-bottom:26px !important;
}
.private-request-revamp .request-step:nth-child(3) > div{
  min-height:max-content !important;
  align-self:start !important;
}
.private-request-revamp .request-discretion-note{
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin-top:22px !important;
}
@media (max-width:700px){
  .private-request-revamp .request-step:nth-child(3){
    padding-bottom:20px !important;
  }
  .private-request-revamp .request-discretion-note{
    margin-top:18px !important;
  }
}



/* Keep card 03's number and copy vertically aligned with card 02 on wider screens. */
@media (min-width: 901px){
  .pathway-grid .path-card:nth-child(3) .path-content > p{
    min-height:calc(2 * 1.74em) !important;
  }
}



.faq-section{background:linear-gradient(180deg,var(--black),var(--black-2));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.faq-intro{max-width:780px;margin-bottom:48px}.faq-intro .display{max-width:720px;margin:14px 0 18px}.faq-intro .body-copy{max-width:620px}
.faq-list{max-width:980px;margin:0 auto;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{position:relative;cursor:pointer;list-style:none;padding:25px 58px 25px 0;font-family:var(--serif);font-size:clamp(1.45rem,2.2vw,2rem);font-weight:500;line-height:1.18;color:var(--cream)}
.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:"+";position:absolute;right:8px;top:50%;transform:translateY(-50%);font-family:var(--sans);font-size:1.35rem;font-weight:300;color:var(--gold-light);transition:transform .25s ease}
.faq-item[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq-item p{max-width:790px;margin:0;padding:0 58px 28px 0;color:var(--muted);font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.85}
.faq-item summary:focus-visible{outline:1px solid var(--gold);outline-offset:8px}.faq-answer-block{padding:0 58px 28px 0}.faq-answer-block p{max-width:790px;margin:0;color:var(--muted);font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.85}.faq-answer-block .section-action{margin-top:16px}.faq-cta-link{display:inline-flex}
@media(max-width:700px){.faq-intro{margin-bottom:30px}.faq-item summary{padding:20px 44px 20px 0;font-size:1.45rem}.faq-item p{padding:0 34px 24px 0;line-height:1.72}.faq-answer-block{padding:0 34px 24px 0}.faq-answer-block p{line-height:1.72}}



  .availability .availability-head .body-copy{
    max-width:760px;
    margin-top:22px;
    color:#49362c !important;
  }



/* Keep the entrance location note clear of the centered door on tablet and mobile. */
@media(max-width:900px){
  .threshold-bottom{
    box-sizing:border-box !important;
    padding-inline:clamp(18px,4vw,32px) !important;
    justify-content:flex-end !important;
  }
  .threshold-location{
    margin-left:auto !important;
    margin-right:0 !important;
  }
}



/* Curated collaborations & warmer photography | October 2026 */
.curated-collaborations{padding:clamp(20px,3.4vw,44px) clamp(22px,5.5vw,86px) clamp(55px,6.5vw,90px);background:#0a0806;scroll-margin-top:78px}
.curated-collaborations-inner{max-width:1160px;margin:0 auto;padding:clamp(27px,3.6vw,48px) clamp(26px,4.3vw,58px);border:1px solid rgba(214,172,112,.28);background:linear-gradient(110deg,rgba(64,38,21,.27),rgba(14,10,7,.66) 62%,rgba(31,20,13,.45));display:grid;grid-template-columns:minmax(0,1.5fr) minmax(200px,.65fr);gap:clamp(22px,4vw,65px);align-items:center}
.curated-collaborations .section-label{font-size:10px;letter-spacing:.28em;color:#c7a875;margin-bottom:18px}
.curated-collaborations h2{font:400 clamp(24px,2.5vw,34px)/1.17 var(--serif);letter-spacing:.007em;color:#f0e2ce;margin:0 0 15px;max-width:710px}
.curated-collaborations .curated-copy>p{margin:0;max-width:650px;color:#c9b9a7;font-size:13px;line-height:1.9}
.curated-contact{width:100%}
.curated-contact summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 2px;border-bottom:1px solid rgba(214,172,112,.6);color:#e7c694;font:500 11px/1.45 var(--sans,inherit);letter-spacing:.16em;text-transform:uppercase}
.curated-contact summary::-webkit-details-marker{display:none}
.curated-contact summary:focus-visible{outline:2px solid #e7c694;outline-offset:5px}
.curated-arrow{font-size:22px;font-weight:300;line-height:1;transition:transform .3s ease}
.curated-contact[open] .curated-arrow{transform:rotate(45deg)}
.curated-form-wrap{padding-top:22px}
.curated-form-wrap h3{font:400 24px/1.17 var(--serif);color:#f0e2ce;margin:0 0 8px}
.curated-form-wrap>p{color:#c9b9a7;font-size:12px;line-height:1.7;margin:0 0 14px}
.curated-form-wrap form{display:grid;gap:9px}
.curated-form-wrap label{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#d9c7ad;margin-top:4px}
.curated-form-wrap input:not([type=hidden]),.curated-form-wrap textarea{display:block;width:100%;min-width:0;box-sizing:border-box;color:#f3e7d3;background:rgba(5,4,3,.55);border:1px solid rgba(214,172,112,.32);padding:12px;font-family:inherit;font-size:13px;line-height:1.5;border-radius:0}
.curated-form-wrap textarea{min-height:90px;resize:vertical;font-family:inherit}
.curated-form-wrap input:focus,.curated-form-wrap textarea:focus{outline:1px solid #c6a374;outline-offset:2px}
.curated-form-wrap form button{background:#b8986f;color:#140e09;border:0;margin-top:10px;padding:14px 12px;cursor:pointer;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.curated-form-wrap form button:hover{background:#cfad7b}
.curated-form-wrap form button:disabled{opacity:.6;cursor:wait}
.curated-form-wrap .curated-feedback{min-height:1.3em;font-size:12px;color:#dfbf8e;margin:6px 0 0}
.curated-form-wrap .hidden-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
/* Original images were intentionally subdued by filters. Restore a warm, clear normal state, not just hover. */
.salon-image img{filter:saturate(1.07) brightness(1.06) contrast(1.035) sepia(.025)!important}
.path-image img,.pathways .path-image img{filter:saturate(1.09) brightness(1.075) contrast(1.025) sepia(.025)!important}
#experiences.experience-rebuilt .experience-visual img{filter:saturate(1.12) brightness(1.1) contrast(1.035) sepia(.035)!important}
.gallery-card img,.gallery-card:hover img{filter:saturate(1.11) brightness(1.08) contrast(1.025) sepia(.03)!important}
.destination-bg{filter:saturate(1.055) brightness(1.065) sepia(.025)!important}
.destination:hover .destination-bg{filter:saturate(1.10) brightness(1.085) sepia(.02)!important}
.city-card img,.city-card:hover img{filter:saturate(1.06) brightness(1.045) contrast(1.02) sepia(.02)!important}
@media(max-width:820px){.curated-collaborations-inner{grid-template-columns:minmax(0,1fr);gap:15px}.curated-contact{max-width:480px}.curated-collaborations{padding-inline:20px}.curated-collaborations-inner{padding:28px 23px}}
/* Clear client vs partner request wording, and accessible opt-in for partner forwarding */
.curated-collaborations .curated-copy>p+p{margin-top:14px}
.curated-form-wrap>p+p{margin-top:-5px;margin-bottom:16px}
.curated-form-wrap .curated-consent{display:flex;align-items:flex-start;gap:11px;cursor:pointer;margin-top:10px;margin-bottom:2px;text-transform:none;letter-spacing:normal;font-size:12px;line-height:1.6;color:#e3d1b8}
.curated-form-wrap .curated-consent input[type="checkbox"]{width:17px;min-width:17px;height:17px;box-sizing:border-box;flex:0 0 17px;margin:2px 0 0;padding:0;display:block;accent-color:#d2aa74;border:1px solid #b8986f;cursor:pointer}
.curated-form-wrap .curated-consent span{display:block;flex:1}
.curated-form-wrap .curated-consent input[type="checkbox"]:focus-visible{outline:2px solid #e7c694;outline-offset:3px}



/* Final presentation: distinct restrained normal / hover photography, original layout retained. */
.gallery-card img {
  filter:saturate(1.07) sepia(.12) brightness(1.055) contrast(1.02) !important;
  transform:scale(1) !important;
  transition:filter .62s ease, transform .62s ease !important;
}
.gallery-card:hover img,
.gallery-card:focus-within img {
  filter:saturate(1.13) sepia(.085) brightness(1.085) contrast(1.032) !important;
  transform:scale(1.018) !important;
}
.gallery-card img,
.gallery-card { max-width:100%; }
/* When the photo is switched by language, one envelope remains in the gallery. */
.gallery-tag-title{display:block}
/* Remove the fine vertical border entirely while keeping the selection note legible. */
.private-request-revamp .request-discretion-note,
.private-request-revamp [data-i18n="requestDiscretionNote"] {
  border:0 !important;
  border-left:0 !important;
  border-right:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  padding:16px 0 0 !important;
  margin:22px 0 0 !important;
  font:italic 500 clamp(17px,1.3vw,20px)/1.55 var(--serif) !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  max-width:100% !important;
  overflow-wrap:break-word !important;
  hyphens:auto;
}
.private-request-revamp .request-discretion-note::before,
.private-request-revamp .request-discretion-note::after {display:none !important;}
/* Give French and English the space they need, including smaller screens. */
#request .request-frame,#request .request-intro-panel,#request .request-form-panel,
#request .request-process,#request .request-step,#request .request-step>div,
#experiences .experience-flow,#experiences .experience-stage,#experiences .experience-detail,
.curated-collaborations-inner,.curated-copy,.curated-contact,
.request-secondary-inner,.secondary-contact-heading,.secondary-contact-actions {
  min-width:0 !important;
  max-width:100%;
  box-sizing:border-box;
}
#request .request-step, #request .request-step>div {height:auto !important;min-height:0 !important;overflow:visible !important;}
#request .request-step p, #request .request-step strong, #request .request-discretion-note,
#request .form-intro, #request .form-guidance, #request .body-copy,
#experiences .experience-detail p, #experiences .experience-detail span,
.curated-collaborations p, .curated-collaborations h2,
.request-secondary-contacts p, .request-secondary-contacts h3 {
  overflow-wrap:break-word;
  word-break:normal;
  text-wrap:pretty;
}
#request .request-form-panel input,#request .request-form-panel textarea,#request .request-form-panel select {min-width:0;max-width:100%;box-sizing:border-box}
/* Partnership / secondary contact path, visually distinct from private request. */
.request-secondary-contacts {position:relative;z-index:2;width:min(100%,1350px);margin:clamp(28px,4vw,60px) auto 0;padding:0 clamp(8px,2.7vw,28px);box-sizing:border-box;scroll-margin-top:100px}
.request-secondary-inner {border-top:1px solid rgba(210,172,120,.24);padding:clamp(26px,3vw,42px) clamp(12px,2vw,28px) 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(18px,3vw,50px);align-items:start;}
.secondary-contact-heading h3 {font:400 clamp(23px,2.2vw,31px)/1.19 var(--serif);color:#f1e3cf;margin:10px 0 12px;}
.secondary-contact-heading p,.secondary-partnership-body p {font-size:clamp(14px,1.06vw,16px);line-height:1.65;color:#c8b5a0;margin:0}
.secondary-contact-actions {display:grid;gap:14px;align-self:center}
.secondary-contact-link,.secondary-partnership-details summary {display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 3px;border-bottom:1px solid rgba(214,172,112,.4);color:#e9c797;font:500 clamp(11px,1vw,13px)/1.65 var(--sans,inherit);text-decoration:none;letter-spacing:.095em;text-transform:uppercase;cursor:pointer;}
.secondary-contact-link:hover,.secondary-partnership-details summary:hover{color:#f2debf}
.secondary-partnership-details summary{list-style:none}
.secondary-partnership-details summary::-webkit-details-marker{display:none}
.secondary-arrow{font-size:21px;transition:transform .25s ease;flex-shrink:0}
.secondary-partnership-details[open] .secondary-arrow{transform:rotate(45deg)}
.secondary-partnership-body{padding:18px 0 10px;}
.secondary-partnership-body form{margin-top:18px;}
.partnership-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 18px}
.partnership-fields>div{min-width:0}
.partnership-fields .partner-full{grid-column:1/-1}
.partnership-fields label{display:block;font-size:10px;letter-spacing:.10em;line-height:1.5;text-transform:uppercase;color:#decbb3;margin-bottom:7px}
.partnership-fields input,.partnership-fields textarea{width:100%;box-sizing:border-box;min-width:0;padding:11px 12px;border:1px solid rgba(214,172,112,.30);background:rgba(9,7,5,.75);color:#f0e7dc;font:400 14px/1.5 var(--sans,inherit);border-radius:0}
.partnership-fields textarea{min-height:88px;resize:vertical;}
.partnership-fields input:focus,.partnership-fields textarea:focus{outline:1px solid #c6a374;outline-offset:2px}
.secondary-partnership-body button{background:#b8986f;color:#160e08;cursor:pointer;border:0;margin-top:14px;padding:13px 17px;font-size:11px;letter-spacing:.10em;text-transform:uppercase}
.secondary-partnership-body button:disabled{opacity:.6;cursor:wait}
.partner-feedback{color:#e4cda8;line-height:1.6;margin:12px 0 0;font-size:13px}
.secondary-partnership-body .hidden-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
#recommendations .curated-collaborations-inner>* {min-width:0}
@media(max-width:850px){.request-secondary-inner{grid-template-columns:1fr;gap:10px}.secondary-contact-actions{width:100%}}
@media(max-width:620px){.partnership-fields{grid-template-columns:1fr}.private-request-revamp .request-discretion-note{font-size:clamp(17px,4.6vw,19px)!important;line-height:1.5!important}}
@media(prefers-reduced-motion:reduce){.gallery-card img{transition:none!important}}

/* Private companionship first; visible professional path with restrained luxury styling. */
.salon-action-group{display:flex;align-items:center;flex-wrap:wrap;gap:18px 28px}
.salon-private-link{display:inline-flex;align-items:center;gap:20px;padding:14px 17px;border:1px solid rgba(222,184,133,.67);font:500 10px/1.45 var(--sans,inherit);letter-spacing:.14em;text-transform:uppercase;color:#e9cfaa;text-decoration:none;transition:background .2s,color .2s,border-color .2s}
.salon-private-link:hover,.salon-private-link:focus-visible{background:#dbc39e;color:#170e07;border-color:#dbc39e}
.salon-private-link::after{content:"";font-size:16px}
.curated-collaborations .curated-copy>.curated-boundary{font-size:11.5px;line-height:1.65;color:#baa78e;margin-top:14px}
.curated-partner-link{display:inline-block;margin-top:19px;font:500 10px/1.6 var(--sans,inherit);letter-spacing:.09em;color:#dcbf90;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(220,191,144,.55);padding-bottom:4px;transition:color .2s}
.curated-partner-link:hover,.curated-partner-link:focus-visible{color:#f2e0c4}
.professional-partnerships{scroll-margin-top:90px;padding:clamp(76px,9vw,132px) clamp(22px,6vw,90px);background:radial-gradient(circle at 78% 28%,rgba(98,63,34,.17),transparent 55%),#0c0907;border-top:1px solid rgba(210,172,120,.18)}
.professional-partnerships-inner{max-width:1190px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(38px,6vw,92px);align-items:start}
.professional-partnerships .section-label{font-size:10px;letter-spacing:.24em;color:#c5a57c;margin:0 0 20px;text-transform:uppercase}
.professional-partnerships-copy h2{font:400 clamp(30px,3.5vw,49px)/1.19 var(--serif);color:#f0e3cf;letter-spacing:.01em;margin:0 0 24px;max-width:600px}
.professional-partnerships-lead{font:400 clamp(14px,1.2vw,16px)/1.85 var(--sans,inherit);color:#c7b4a0;margin:0;max-width:590px}
.professional-partnerships-note{display:flex;align-items:flex-start;gap:17px;max-width:540px;margin-top:29px}
.professional-partnerships-note-rule{display:block;width:24px;flex:0 0 24px;height:1px;background:#b99b73;margin-top:12px}
.professional-partnerships-note p{font:400 12px/1.7 var(--sans,inherit);color:#bda98e;margin:0}
.professional-partnerships-panel{border:1px solid rgba(213,170,111,.33);padding:clamp(26px,3vw,40px);background:linear-gradient(155deg,rgba(76,46,27,.25),rgba(17,12,9,.65));min-width:0}
.professional-partnerships-panel-kicker{font:500 10px/1.4 var(--sans,inherit);letter-spacing:.2em;text-transform:uppercase;color:#cda979;margin:0 0 16px}
.professional-partnerships-panel h3{font:400 clamp(24px,2.3vw,32px)/1.2 var(--serif);color:#f0e3cf;margin:0 0 18px}
.professional-partnerships-panel>p{font:400 14px/1.8 var(--sans,inherit);color:#c7b4a0;margin:0 0 24px}
.professional-partnerships-panel .secondary-partnership-details{margin-top:8px}
.professional-partnerships-panel .secondary-partnership-details summary{font-size:12px}
.professional-partnerships-panel .secondary-partnership-body{padding:20px 0 0}
.professional-partnerships-panel .secondary-partnership-body form{margin-top:0}
.professional-partnerships-panel .partnership-fields input,.professional-partnerships-panel .partnership-fields textarea{background:#120e0b}
.footer-quick-links{display:flex;gap:12px 25px;flex-wrap:wrap;margin-bottom:15px}
.footer-quick-links a{font:500 10px/1.5 var(--sans,inherit);letter-spacing:.12em;text-transform:uppercase;color:#d5b88e;text-decoration:none;border-bottom:1px solid rgba(213,184,142,.45);padding-bottom:3px}
.footer-quick-links a:hover,.footer-quick-links a:focus-visible{color:#fff0d8}
@media(max-width:900px){.professional-partnerships-inner{grid-template-columns:1fr;gap:37px}.professional-partnerships-panel{max-width:650px}.salon-action-group{gap:14px 20px}}
@media(max-width:620px){.professional-partnerships{padding:70px 22px}.professional-partnerships-panel{padding:26px 21px}.salon-action-group{flex-direction:column;align-items:flex-start}.salon-private-link{width:auto}}



/* Readability pass for mature visitors: no microscopic body, labels, consent or CTAs. */
#recommendations .section-label,#partnerships .section-label,#partnerships .professional-partnerships-panel-kicker{font-size:clamp(14px,1.1vw,16px)!important;line-height:1.5;letter-spacing:.13em}
#recommendations .curated-copy>p{font-size:clamp(17px,1.4vw,19px)!important;line-height:1.72!important;max-width:680px}
#recommendations .curated-copy>.curated-boundary{font-size:16px!important;line-height:1.7!important;color:#d4c3ac!important}
#recommendations .curated-partner-link{font-size:15px!important;line-height:1.6;letter-spacing:.035em;text-transform:none}
#recommendations .curated-contact summary{font-size:16px!important;line-height:1.6;letter-spacing:.055em;padding-block:17px}
#recommendations .curated-form-wrap h3{font-size:clamp(27px,2vw,32px)!important;line-height:1.23}
#recommendations .curated-form-wrap>p{font-size:16px!important;line-height:1.75!important}
#recommendations .curated-form-wrap form{gap:12px}
#recommendations .curated-form-wrap label{font-size:15px!important;letter-spacing:.045em;line-height:1.55}
#recommendations .curated-form-wrap input:not([type=hidden]),#recommendations .curated-form-wrap textarea{font-size:16px!important;min-height:48px;line-height:1.55;padding:13px}
#recommendations .curated-form-wrap .curated-consent{font-size:16px!important;line-height:1.6!important;letter-spacing:0;text-transform:none}
#recommendations .curated-form-wrap .curated-consent input[type=checkbox]{width:22px;min-width:22px;height:22px;flex-basis:22px;padding:0}
#recommendations .curated-form-wrap form button{font-size:16px!important;line-height:1.5;letter-spacing:.045em;min-height:52px}
#recommendations .curated-form-wrap .curated-feedback{font-size:16px!important}
#partnerships .professional-partnerships-lead{font-size:clamp(17px,1.36vw,19px)!important;line-height:1.76!important}
#partnerships .partner-ways{display:grid;gap:21px;margin-top:31px}
#partnerships .partner-way{display:grid;grid-template-columns:29px minmax(0,1fr);gap:15px;align-items:start}
#partnerships .partner-way-number{font:500 15px/1.7 var(--sans,inherit);color:#d8b886}
#partnerships .partner-way h3{font:400 clamp(21px,1.8vw,26px)/1.28 var(--serif);color:#efe2cf;margin:0 0 8px}
#partnerships .partner-way p{font:400 clamp(16px,1.16vw,18px)/1.73 var(--sans,inherit);color:#d0bea7;margin:0}
#partnerships .professional-partnerships-note{max-width:620px}
#partnerships .professional-partnerships-note p{font-size:16px!important;line-height:1.7!important;color:#d1bda4}
#partnerships .professional-partnerships-panel>p{font-size:17px!important;line-height:1.75!important}
#partnerships .professional-partnerships-panel .secondary-partnership-details summary{font-size:16px!important;line-height:1.55;letter-spacing:.045em;min-height:52px}
#partnerships .partnership-fields label{font-size:15px!important;line-height:1.55;letter-spacing:.045em}
#partnerships .partnership-fields input,#partnerships .partnership-fields select,#partnerships .partnership-fields textarea{display:block;width:100%;min-width:0;box-sizing:border-box;font:400 16px/1.55 var(--sans,inherit)!important;min-height:48px;padding:12px 13px;color:#f0e7dc;background:#120e0b;border:1px solid rgba(214,172,112,.4);border-radius:0}
#partnerships .partnership-fields select{color-scheme:dark}
#partnerships .partnership-fields select:focus-visible{outline:2px solid #c6a374;outline-offset:2px}
#partnerships .secondary-partnership-body button{font-size:16px!important;min-height:52px;line-height:1.45;letter-spacing:.045em}
#partnerships .partner-feedback{font-size:16px!important;line-height:1.6}
/* Readable global navigation provides access to partnerships, too. */
@media(min-width:901px){.topbar .nav a{font-size:clamp(12px,.95vw,14px)!important;letter-spacing:.075em!important}}
@media(max-width:900px){.topbar .nav a{font-size:14px!important}}
@media(max-width:620px){#partnerships .partner-ways{gap:26px}#partnerships .professional-partnerships-copy h2{font-size:clamp(31px,8vw,42px)}#recommendations .curated-copy>p{font-size:17px!important}}
