/* =========================================================
   v3.14 — ATELIER EXPERIENCE LAYER
   Controlled additions only: page choreography, a restrained
   desktop cursor, Studio Standard, and Project Compass.
   ========================================================= */


:root{--display:"Cormorant Garamond",Georgia,serif!important;--sans:"DM Sans",Arial,sans-serif!important}
body{font-family:var(--sans)!important;color:var(--ink)!important}
h1,h2,h3,.concierge-launcher-copy strong,.concierge-identity strong{font-family:var(--display)!important;color:inherit}

/* Retire the previous ambient mouse glow. */
.cursor-glow{display:none!important}

/* ---------- Page choreography ---------- */
.aw-page-veil{
  position:fixed;inset:0;z-index:998;pointer-events:none;
  display:grid;place-items:center;overflow:hidden;
  opacity:0;visibility:hidden;
  background:
    radial-gradient(circle at 50% 48%,rgba(173,126,73,.10),transparent 30%),
    linear-gradient(135deg,#030405,#090b0e 55%,#030405);
  transition:opacity .34s ease,visibility .34s ease;
}
.aw-page-veil::before,
.aw-page-veil::after{
  content:"";position:absolute;inset:-20%;pointer-events:none;
}
.aw-page-veil::before{
  background:linear-gradient(112deg,transparent 35%,rgba(255,255,255,.05) 49%,rgba(199,157,105,.08) 52%,transparent 67%);
  transform:translateX(-55%);opacity:0;
}
.aw-page-veil::after{
  inset:auto 8vw 10vh;height:1px;
  background:linear-gradient(90deg,transparent,rgba(207,168,116,.62),transparent);
  transform:scaleX(0);
}
.aw-page-veil.is-leaving{opacity:1;visibility:visible;pointer-events:auto}
.aw-page-veil.is-leaving::before{animation:awVeilSweep .72s cubic-bezier(.22,.75,.2,1) forwards}
.aw-page-veil.is-leaving::after{animation:awVeilLine .58s .05s cubic-bezier(.22,.75,.2,1) forwards}
.aw-page-veil-inner{position:relative;z-index:2;text-align:center;transform:translateY(8px);opacity:0}
.aw-page-veil.is-leaving .aw-page-veil-inner{animation:awVeilCopy .42s .08s ease forwards}
.aw-page-veil img{width:78px;height:78px;object-fit:contain;filter:drop-shadow(0 14px 28px rgba(0,0,0,.42))}
.aw-page-veil small{display:block;margin-top:15px;font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:#9f978d}
.aw-page-veil strong{display:block;margin-top:8px;font-family:"Cormorant Garamond",serif;font-size:31px;font-weight:600;color:#efe3d2}
@keyframes awVeilSweep{0%{transform:translateX(-58%);opacity:0}35%{opacity:1}100%{transform:translateX(58%);opacity:0}}
@keyframes awVeilLine{to{transform:scaleX(1)}}
@keyframes awVeilCopy{to{transform:none;opacity:1}}

/* ---------- Small, intentional desktop cursor ---------- */
.aw-cursor-ring,.aw-cursor-dot{
  position:fixed;left:0;top:0;pointer-events:none;z-index:120;
  opacity:0;transform:translate(-50%,-50%);will-change:left,top,width,height,opacity;
}
.aw-cursor-ring{
  width:20px;height:20px;border-radius:50%;
  border:1px solid rgba(218,185,142,.48);
  background:rgba(255,255,255,.008);
  box-shadow:0 0 0 1px rgba(0,0,0,.14),inset 0 0 12px rgba(198,153,96,.035);
  transition:width .22s ease,height .22s ease,border-color .22s ease,background .22s ease,opacity .18s ease;
}
.aw-cursor-dot{width:3px;height:3px;border-radius:50%;background:#d2b17f;transition:opacity .18s ease}
.aw-cursor-ring.is-visible,.aw-cursor-dot.is-visible{opacity:1}
.aw-cursor-ring.is-interactive{
  width:43px;height:43px;border-color:rgba(228,201,165,.68);
  background:rgba(198,153,96,.045);
  box-shadow:0 0 24px rgba(198,153,96,.08),inset 0 0 18px rgba(255,255,255,.035);
}

/* ---------- Refined interaction sheen ---------- */
.glass-btn,.package-tab,.pill,.choice-card,.standard-card{position:relative;overflow:hidden;isolation:isolate}
.glass-btn::after,
.package-tab::after,
.pill::after,
.standard-card::after{
  content:"";position:absolute;inset:-80% -45%;z-index:-1;pointer-events:none;
  background:linear-gradient(112deg,transparent 42%,rgba(255,255,255,.13) 49%,rgba(207,164,107,.10) 52%,transparent 59%);
  transform:translateX(-56%) rotate(2deg);opacity:0;
  transition:transform .7s cubic-bezier(.22,.75,.2,1),opacity .25s ease;
}
.glass-btn:hover::after,.package-tab:hover::after,.pill:hover::after,.standard-card:hover::after{transform:translateX(56%) rotate(2deg);opacity:.8}
.text-link{position:relative;padding-bottom:5px}
.text-link::after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#caa16b,transparent);transition:left .3s ease,right .3s ease}
.text-link:hover::after{left:0;right:0}

/* ---------- Homepage atelier index ---------- */
.atelier-index{
  position:fixed;right:18px;top:50%;z-index:18;transform:translateY(-50%);
  display:grid;gap:10px;padding:13px 9px;border:1px solid rgba(255,255,255,.08);
  border-radius:999px;background:rgba(5,7,9,.30);
  -webkit-backdrop-filter:blur(22px) saturate(150%);backdrop-filter:blur(22px) saturate(150%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 45px rgba(0,0,0,.20);
}
.atelier-index button{
  appearance:none;border:0;background:none;padding:0;width:8px;height:8px;border-radius:50%;
  cursor:pointer;background:rgba(255,255,255,.18);position:relative;transition:.25s;
}
.atelier-index button::before{
  content:attr(data-label);position:absolute;right:18px;top:50%;transform:translateY(-50%) translateX(5px);
  white-space:nowrap;opacity:0;pointer-events:none;padding:7px 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.09);background:rgba(7,9,12,.72);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:#d8d0c5;transition:.22s;
}
.atelier-index button:hover::before,.atelier-index button:focus-visible::before{opacity:1;transform:translateY(-50%) translateX(0)}
.atelier-index button.active{background:#cfaa77;box-shadow:0 0 16px rgba(207,170,119,.38);transform:scale(1.22)}

/* ---------- Studio Standard ---------- */
.studio-standard-panel{padding:120px 4vw;position:relative;overflow:hidden}
.studio-standard-panel::before{
  content:"";position:absolute;inset:8% 0 auto 46%;height:68%;pointer-events:none;
  background:radial-gradient(ellipse,rgba(198,151,94,.075),transparent 67%);filter:blur(35px);
}
.standard-heading{max-width:var(--max);margin:0 auto 54px;display:grid;grid-template-columns:1.08fr .92fr;gap:7vw;align-items:end}
.standard-heading>p{max-width:580px;margin:0;color:#aaa59d;font-size:16px;line-height:1.75}
.standard-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;perspective:1400px}
.standard-card{
  min-height:220px;padding:28px;border-radius:28px;
  border:1px solid rgba(255,255,255,.105);
  background:
    linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.018) 58%,rgba(198,151,94,.025)),
    rgba(6,8,11,.38);
  -webkit-backdrop-filter:blur(24px) saturate(145%);backdrop-filter:blur(24px) saturate(145%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 26px 70px rgba(0,0,0,.18);
  display:grid;grid-template-columns:auto 1fr;gap:22px;align-content:start;
  transform:translateZ(0);transition:transform .38s cubic-bezier(.22,.75,.2,1),border-color .3s,background .3s;
}
.standard-card:hover{transform:translateY(-6px) rotateX(1.5deg);border-color:rgba(218,184,140,.22);background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.024) 58%,rgba(198,151,94,.052)),rgba(6,8,11,.42)}
.standard-card>span{font-size:10px;letter-spacing:.18em;color:#c4a476;padding-top:5px}
.standard-card h3{font-size:34px;line-height:1;margin-bottom:15px}
.standard-card p{margin:0;color:#aaa69f;font-size:14px;line-height:1.65;max-width:350px}
.standard-card i{position:absolute;left:28px;right:28px;bottom:22px;height:1px;background:linear-gradient(90deg,rgba(201,160,105,.48),transparent);transform-origin:left;transform:scaleX(.18);transition:transform .45s cubic-bezier(.22,.75,.2,1)}
.standard-card:hover i{transform:scaleX(1)}
.standard-card:nth-child(2),.standard-card:nth-child(5){transition-delay:.05s}
.standard-card:nth-child(3),.standard-card:nth-child(6){transition-delay:.10s}

/* ---------- Project Compass ---------- */
.compass-panel{padding-top:80px!important}
.project-compass{
  display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:0;
  border:1px solid rgba(255,255,255,.12);border-radius:38px;overflow:hidden;
  background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.015));
  -webkit-backdrop-filter:blur(28px) saturate(150%);backdrop-filter:blur(28px) saturate(150%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 45px 120px rgba(0,0,0,.27);
}
.compass-sidebar{
  padding:42px;border-right:1px solid rgba(255,255,255,.09);position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 20% 12%,rgba(205,163,108,.11),transparent 30%),
    linear-gradient(155deg,rgba(255,255,255,.05),rgba(3,5,8,.34));
}
.compass-sidebar::after{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(198,153,96,.09);border-radius:50%;right:-180px;bottom:-170px;box-shadow:0 0 0 42px rgba(255,255,255,.013),0 0 0 84px rgba(255,255,255,.008)}
.compass-sidebar h2{font-size:clamp(42px,4vw,64px)}
.compass-sidebar>p:not(.eyebrow){color:#aaa59d;font-size:15px;line-height:1.72;margin:22px 0 34px}
.compass-progress{display:grid;gap:10px;margin:0 0 34px}
.compass-progress span{display:flex;align-items:center;gap:13px;color:#78756f;font-size:9px;letter-spacing:.16em;text-transform:uppercase;transition:.3s}
.compass-progress span::after{content:"";height:1px;flex:1;background:rgba(255,255,255,.07)}
.compass-progress span.active{color:#e5d4bd}
.compass-progress span.active::after{background:linear-gradient(90deg,rgba(202,161,107,.58),transparent)}
.compass-progress b{font-weight:500;color:#ba9565}
.compass-summary{position:relative;z-index:1;padding:20px;border:1px solid rgba(255,255,255,.09);border-radius:23px;background:rgba(4,7,10,.29);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.compass-summary>small{display:block;margin-bottom:14px;font-size:8px;letter-spacing:.19em;text-transform:uppercase;color:#b29469}
.compass-summary dl{margin:0;display:grid;gap:10px}
.compass-summary dl div{display:grid;grid-template-columns:78px 1fr;gap:12px;padding-bottom:9px;border-bottom:1px solid rgba(255,255,255,.06)}
.compass-summary dl div:last-child{border-bottom:0;padding-bottom:0}
.compass-summary dt{font-size:9px;color:#77736e}.compass-summary dd{margin:0;font-size:10px;color:#d4cec5;line-height:1.4}
.compass-form{padding:42px!important;display:block!important;min-height:700px;position:relative}
.compass-step{animation:compassEnter .42s cubic-bezier(.22,.75,.2,1);scroll-margin-top:92px}
.compass-step[hidden]{display:none!important}
@keyframes compassEnter{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:none}}
.step-heading{margin-bottom:30px}.step-heading>span{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#b9915e}.step-heading h3{font-size:clamp(42px,4vw,62px);margin:12px 0 14px}.step-heading p{margin:0;color:#99958e;font-size:14px;line-height:1.65;max-width:650px}
.compass-fields{display:grid;gap:14px;margin-bottom:25px}.compass-fields.two-col{grid-template-columns:1fr 1fr}
.choice-fieldset{border:0;padding:0;margin:0 0 25px}.choice-fieldset legend{padding:0;margin:0 0 11px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#a8a198}.choice-fieldset.field-error-wrap legend{color:#e1a18f}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.direction-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.response-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.choice-card{
  min-height:95px;display:block;border:1px solid rgba(255,255,255,.09);border-radius:20px;
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.014));
  cursor:pointer;transition:transform .25s ease,border-color .25s,background .25s,box-shadow .25s;
}
.choice-card input{position:absolute;opacity:0;pointer-events:none}
.choice-card>span{height:100%;min-height:95px;display:flex;flex-direction:column;justify-content:center;padding:18px 19px;position:relative;z-index:1}
.choice-card b{font-family:"Cormorant Garamond",serif;font-size:25px;font-weight:600;color:#e7ded2;line-height:1}
.choice-card small{display:block;margin-top:8px;color:#85817b;font-size:10px;line-height:1.45}
.choice-card em{position:absolute;right:14px;top:14px;font-style:normal;font-size:7px;letter-spacing:.15em;text-transform:uppercase;color:#b38d5b}
.choice-card:hover{transform:translateY(-2px);border-color:rgba(216,182,139,.20);background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(198,153,96,.025))}
.choice-card:has(input:checked),.choice-card.selected{
  border-color:rgba(226,195,155,.36);
  background:linear-gradient(145deg,rgba(218,183,139,.14),rgba(255,255,255,.028));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.17),0 18px 38px rgba(0,0,0,.16);
}
.choice-card:has(input:checked)::before,.choice-card.selected::before{content:"";position:absolute;right:14px;bottom:14px;width:8px;height:8px;border-radius:50%;background:#d1a86e;box-shadow:0 0 15px rgba(209,168,110,.48)}
.compass-actions{display:flex;justify-content:space-between;align-items:center;margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.075)}
.compass-actions button.text-link{appearance:none;border:0;background:none;color:#b8b2aa;cursor:pointer;font:inherit;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.compass-form textarea{min-height:210px!important}
.compass-form .field-error,.choice-fieldset.field-error-wrap .choice-card{border-color:rgba(217,110,89,.42)!important}

/* ---------- Responsive and motion accessibility ---------- */
@media(max-width:1180px){
  .atelier-index{display:none}
  .standard-grid{grid-template-columns:repeat(2,1fr)}
  .project-compass{grid-template-columns:1fr}
  .compass-sidebar{border-right:0;border-bottom:1px solid rgba(255,255,255,.09)}
  .compass-progress{grid-template-columns:repeat(4,1fr)}
  .compass-progress span{display:grid;gap:5px}.compass-progress span::after{display:none}
  .compass-summary dl{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .studio-standard-panel{padding:88px 4vw}
  .standard-heading{grid-template-columns:1fr;gap:22px;margin-bottom:34px}
  .standard-grid{grid-template-columns:1fr}
  .standard-card{min-height:190px}
  .compass-sidebar,.compass-form{padding:26px!important}
  .compass-form{min-height:0}
  .compass-progress{grid-template-columns:repeat(2,1fr)}
  .compass-summary dl{grid-template-columns:1fr}
  .compass-fields.two-col,.choice-grid,.direction-choice-grid,.response-choice-grid{grid-template-columns:1fr}
  .choice-card,.choice-card>span{min-height:86px}
  .aw-page-veil strong{font-size:26px}
}
@media(pointer:coarse){.aw-cursor-ring,.aw-cursor-dot{display:none}}
@media(prefers-reduced-motion:reduce){
  .aw-page-veil::before,.aw-page-veil::after,.aw-page-veil-inner{animation:none!important}
  .standard-card,.choice-card,.glass-btn::after,.package-tab::after,.pill::after,.standard-card::after{transition:none!important}
}
