/* Quiet depth: directional light, soft shadows and tactile controls. */
:root{--shadow-soft:0 12px 30px rgba(10,9,7,.18);--shadow-raised:0 22px 48px rgba(9,8,6,.28)}
header{box-shadow:0 8px 30px rgba(8,7,6,.12);position:relative;z-index:2}
.hero-copy{background:radial-gradient(ellipse at 15% 10%,rgba(125,120,114,.12),transparent 65%)}
.academic-signature{background:linear-gradient(135deg,#3c3833,#2d2924);border-top:1px solid #58544e;border-bottom:1px solid #211e1a;border-right:1px solid #3c3833;border-radius:0 8px 8px 0;box-shadow:0 14px 32px #110f0c38,inset 0 1px 0 #ffffff08}
.academic-signature .degree-link{display:inline-block;color:var(--paper);font-size:11px;margin-top:12px;text-decoration:underline;text-underline-offset:4px}
.button{background:linear-gradient(145deg,#dfcd9e 0%,#d1b17c 62%,#bba16a 100%);box-shadow:0 4px 0 #897342,0 10px 22px #0d0c0a45,inset 0 1px 0 #fff4;border:1px solid #e7d6aa66;transition:transform .2s,box-shadow .2s,background .2s}
.outline,.smallbtn{background:linear-gradient(145deg,#ffffff06,#0000000a);box-shadow:0 3px 0 #161410,0 8px 20px #110f0d33,inset 0 1px 0 #ffffff0c;transition:transform .2s,box-shadow .2s,border-color .2s}
.contact .button{background:linear-gradient(145deg,#423d37,#181715);box-shadow:0 4px 0 #13110e,0 12px 22px #18171530,inset 0 1px 0 #ffffff18;color:var(--paper)}
.button:active,.outline:active,.smallbtn:active{transform:translateY(2px);box-shadow:0 1px 0 #776238,0 3px 8px #0d0c0a33}
.packages article,.pt{background:linear-gradient(135deg,#3b3731 0%,#292723 45%,#282521 100%);border-top-color:#5b5752;box-shadow:var(--shadow-soft),inset 0 1px 0 #ffffff05;transition:transform .25s,box-shadow .25s}
.packages .recommended{background:linear-gradient(145deg,#413e3a,#322f2a 65%,#2c2925);box-shadow:0 16px 40px #110f0d40,0 0 0 1px #d1b17c20,inset 0 1px 0 #e8d6a526}
.badge,.team-label{box-shadow:0 4px 10px #12100d30}.term{box-shadow:inset 0 2px 6px #0c0b0945}.term .active{background:linear-gradient(145deg,#dec99a,#d1b17c);box-shadow:0 3px 8px #110f0d40,inset 0 1px 0 #ffffff33}
.booking-layout{box-shadow:var(--shadow-raised)}.booking-info{background:linear-gradient(140deg,#3c3833,#292723 60%)}.booking-dates button,.booking-times button{background:linear-gradient(145deg,#3c3833,#292723);box-shadow:0 3px 0 #161410,0 5px 12px #110f0d22,inset 0 1px 0 #ffffff0a;transition:transform .2s,box-shadow .2s}.booking button[aria-pressed=true]{background:linear-gradient(145deg,#dfcd9e,#d1b17c);box-shadow:0 2px 0 #8b7448,inset 0 1px 0 #ffffff40}.booking-fields input{box-shadow:inset 0 2px 5px #0c0a0833}.booking button:disabled{box-shadow:none;transform:none}
.expertise{border-top:1px solid #4a4742;background:radial-gradient(ellipse at 100% 0,rgba(130,123,114,.12),transparent 55%),#25221e}
.expertise-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.618034fr);gap:55px;align-items:start}.expertise-intro h2{font-size:clamp(34px,3.5vw,55px);margin:21px 0}.expertise-intro>div>p:last-child{color:var(--muted);font-size:14px;max-width:36ch;line-height:1.85}.degree-kicker{color:var(--gold);font-size:12px;line-height:1.8;margin:0 0 25px}.degree-kicker strong{display:block;color:var(--paper);font-size:17px}
.expertise-benefits{display:grid;grid-template-columns:1fr 1fr;gap:21px}.expertise-benefits article{padding:26px 24px;border:1px solid #4b4742;border-top-color:#68635d;border-radius:8px;background:linear-gradient(140deg,#3a3732,#2f2c27 65%,#2a2722);box-shadow:0 12px 28px #110f0d22,inset 0 1px 0 #ffffff07}.expertise-benefits .benefit-number{display:inline-block;font-size:25px;font-weight:bold;letter-spacing:-1px;color:var(--gold);text-shadow:0 2px 0 #181511}.expertise-benefits h3{font-size:18px;margin:12px 0 9px}.expertise-benefits p{font-size:13px;color:var(--muted);line-height:1.8;margin:0}
.return-training{margin-top:55px;padding:34px 38px;border-radius:9px;background:linear-gradient(135deg,#f8f5ed,#e8e4d8);color:var(--bg);box-shadow:0 18px 44px #0d0c0a30,inset 0 1px 0 #fff;display:grid;grid-template-columns:1fr 1.618034fr;gap:42px}.return-training .eyebrow{color:#80603a;margin-top:0}.return-training h3{font-size:29px;line-height:1.3;margin:12px 0 20px}.return-training p{font-size:14px;line-height:1.85;margin:0 0 15px;color:#4e4b46}.return-training .care-note{font-size:11px;border-top:1px solid #c4c1bd;padding-top:14px;margin-bottom:0;color:#5c5956}.return-training a{font-size:12px;font-weight:700;display:inline-block;text-decoration:underline;text-underline-offset:5px}.expertise-faq-source{display:inline-block;margin-top:9px;text-decoration:underline;text-underline-offset:4px;font-size:12px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.button:hover{transform:translateY(-3px);box-shadow:0 6px 0 #897342,0 16px 28px #0d0c0a50,inset 0 1px 0 #fff4}.outline:hover,.smallbtn:hover{transform:translateY(-2px);box-shadow:0 5px 0 #161410,0 12px 22px #110f0d40}.contact .button:hover{box-shadow:0 6px 0 #13110e,0 16px 26px #18171540,inset 0 1px 0 #ffffff18}.packages article:hover{transform:translateY(-4px);box-shadow:var(--shadow-raised)}.booking-dates button:hover,.booking-times button:hover{transform:translateY(-2px)}}
@media(max-width:900px){.expertise-intro{grid-template-columns:1fr;gap:21px}.expertise-intro>div>p:last-child{max-width:65ch}.return-training{gap:26px;padding:28px}}
@media(max-width:600px){.expertise-benefits{grid-template-columns:1fr;gap:15px}.expertise-benefits article{padding:22px}.return-training{grid-template-columns:1fr;gap:21px;margin-top:34px;padding:25px 22px}.return-training h3{font-size:27px}.expertise-intro{gap:13px}.expertise-intro h2{font-size:36px}.return-training p{font-size:13px}.packages article{box-shadow:0 10px 24px #110f0d30}}
@media(prefers-reduced-motion:reduce){.button:hover,.outline:hover,.smallbtn:hover,.button:active,.outline:active,.smallbtn:active,.packages article:hover,.booking-dates button:hover,.booking-times button:hover{transform:none;transition:none}}

/* Warm champagne glow, shared by pointer and keyboard interactions. */
:root{--glow-button:0 6px 0 #897342,0 12px 26px #0d0c0a40,0 0 24px #d9c38c38,inset 0 1px 0 #fff7;--glow-outline:0 4px 0 #161410,0 8px 22px #110f0d33,0 0 22px #d1b17c24,inset 0 0 20px #d1b17c0b;--glow-card:0 22px 48px #09080647,0 0 28px #d1b17c12,inset 0 1px 0 #e8d6a53b,inset 0 0 50px #d1b17c09}
.button,.outline,.smallbtn,.booking-dates button,.booking-times button{transition:transform .22s ease,box-shadow .28s ease,border-color .28s ease,filter .28s ease}
.packages article,.expertise-benefits article,.pt{transition:transform .25s ease,box-shadow .3s ease,border-color .3s ease}
nav>a:not(.smallbtn),.degree-link,summary{transition:color .22s ease,text-shadow .25s ease}
.term button{transition:box-shadow .25s ease,color .2s ease}
.button:not(:disabled):focus-visible{box-shadow:var(--glow-button);filter:brightness(1.06)}
.outline:focus-visible,.smallbtn:focus-visible{border-color:#dfca92;box-shadow:var(--glow-outline)}
.contact .button:focus-visible{filter:brightness(1.15);box-shadow:0 5px 0 #13110e,0 12px 26px #18171535,0 0 20px #b59a5f40,inset 0 1px 0 #ffffff30}
.packages article:focus-within,.pt:focus-within{box-shadow:var(--glow-card);border-color:#998961}
.booking-dates button:not(:disabled):focus-visible,.booking-times button:not(:disabled):focus-visible{border-color:var(--gold);box-shadow:var(--glow-outline);filter:brightness(1.1)}
.term button:focus-visible{box-shadow:0 0 15px #d1b17c38,inset 0 0 14px #d1b17c12}
@media(hover:hover) and (pointer:fine){
 .button:not(:disabled):hover{box-shadow:var(--glow-button);filter:brightness(1.06)}
 .outline:hover,.smallbtn:hover{border-color:#dfca92;box-shadow:var(--glow-outline)}
 .contact .button:hover{filter:brightness(1.15);box-shadow:0 5px 0 #13110e,0 12px 26px #18171535,0 0 20px #b59a5f40,inset 0 1px 0 #ffffff30}
 .packages article:hover,.expertise-benefits article:hover,.pt:hover{box-shadow:var(--glow-card);border-color:#998961}
 .booking-dates button:not(:disabled):hover,.booking-times button:not(:disabled):hover{border-color:var(--gold);box-shadow:var(--glow-outline);filter:brightness(1.1)}
 .term button:hover{box-shadow:0 0 15px #d1b17c38,inset 0 0 14px #d1b17c12}
 nav>a:not(.smallbtn):hover,.degree-link:hover,summary:hover{color:#e2d0a2;text-shadow:0 0 15px #d1b17c50}
}
@media(hover:none){.button:not(:disabled):active,.outline:active,.smallbtn:active{filter:brightness(1.08);box-shadow:var(--glow-outline)}}
@media(prefers-reduced-motion:reduce){.button,.outline,.smallbtn,.packages article,.expertise-benefits article,.pt,.booking-dates button,.booking-times button,.term button,nav>a,.degree-link,summary{transition:none}}
