/* =====================================================================
   v3: elegant pass. No outlines, no hard shadows, soft light, one typeface.
   Loads after styles.css and v2.css.
   ===================================================================== */
:root{--head:'DM Sans',system-ui,sans-serif;--acc:#d9603b;--acc2:#f08a63;--line:rgba(255,255,255,.1)}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.loader{font-weight:700;letter-spacing:-.04em}

/* ---- buttons, pills, controls: flat and soft ---- */
.btn{border:0;box-shadow:0 10px 30px -10px rgba(0,0,0,.45);font:600 .95rem var(--body);letter-spacing:-.005em;padding:13px 26px}
.btn:hover{transform:translateY(-2px);box-shadow:0 16px 36px -12px rgba(0,0,0,.5)}
.btn:active{transform:translateY(0);box-shadow:0 6px 18px -8px rgba(0,0,0,.5)}
.btn.primary{background:var(--acc);color:#fff}
.btn.primary:hover{background:#e56c47}
.btn.white{background:#fff;color:#15161c}
.pill{border:0;background:rgba(255,255,255,.72);backdrop-filter:blur(10px);color:#15202b;box-shadow:0 6px 20px -10px rgba(20,40,70,.4)}
.pill .pdot{width:7px;height:7px;border-radius:50%;background:var(--acc)}
.avail{border:0;background:rgba(255,255,255,.92);box-shadow:0 8px 24px -10px rgba(0,0,0,.5)}
.brand{text-shadow:none;font-weight:700;letter-spacing:-.03em}
.brand-dot{border:0;box-shadow:none;width:10px;height:10px;background:var(--acc)}
.nav nav a{text-shadow:none;font-weight:500;font-size:.92rem}
.nav.solid{background:rgba(11,12,17,.7)}
.dots button{border:0;background:rgba(255,255,255,.35);width:8px;height:8px}
.dots button.on{background:#fff;transform:scale(1.5)}
.dots span{background:rgba(11,12,17,.85);border:0}
.arrow{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;box-shadow:none}
.arrow:hover{background:#fff;color:#15161c;transform:none;box-shadow:none}
.arrow:active{transform:scale(.94)}
.more{border:0;box-shadow:none;background:#fff;color:#15161c;font-weight:600}
.more:hover{transform:none;box-shadow:none;background:var(--acc);color:#fff}
.d-close{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff;box-shadow:none}
.d-links a{border:0;box-shadow:none;font-family:var(--body)}
.drawer{border-left:1px solid rgba(255,255,255,.1)}
.toast{border:1px solid rgba(255,255,255,.2);background:rgba(11,12,17,.9)}
.mouse{border:2px solid rgba(255,255,255,.85);box-shadow:none;background:transparent}
.scroll-cue{text-shadow:0 1px 8px rgba(10,30,60,.5)}

/* ---- hero: a calm, photographic sky ---- */
.sky{background:linear-gradient(180deg,#5d97cf 0%,#8fbbe3 38%,#cfe2ee 70%,#f1eadb 100%)}
.sky.dusk{background:linear-gradient(180deg,#0d1226 0%,#1b2650 48%,#5b4b78 78%,#c88a77 100%)}
.sun{width:clamp(110px,14vw,200px);border:0;background:radial-gradient(circle,#fffbe9 0%,#ffe7ae 38%,rgba(255,214,140,.0) 70%);box-shadow:none;filter:blur(1px)}
.sun i{display:none}
.clouds .cloud{filter:blur(1.4px) drop-shadow(0 18px 24px rgba(60,100,150,.18));opacity:.92}
.hero-left .big{color:#0f1c2b;text-shadow:none}
.big .acc{color:var(--acc);text-shadow:none}
.name{color:#0f1c2b}
.role{color:var(--acc)}
.blurb{background:rgba(255,255,255,.6);backdrop-filter:blur(10px);color:#22364a;border-radius:16px;box-shadow:0 10px 30px -14px rgba(20,40,70,.4)}
.ring{filter:drop-shadow(0 30px 40px rgba(30,70,60,.28)) drop-shadow(0 2px 0 rgba(255,255,255,.4))}
.me{animation:none}
.me-svg{filter:drop-shadow(0 24px 24px rgba(8,30,20,.35))}
.me-photo{filter:drop-shadow(0 28px 28px rgba(8,30,20,.4))}
.logo{animation:none}
.cf,.steam,.mug{display:none}

/* ---- certifications ---- */
.cert .badge{width:clamp(46px,5vw,60px);border:0;box-shadow:none;border-radius:16px;font:700 clamp(.95rem,1.4vw,1.15rem) var(--mono);letter-spacing:.02em;color:rgba(255,255,255,.95);background:linear-gradient(135deg,var(--c1),var(--c2));filter:saturate(.8) brightness(.88);transform:translateZ(24px)}
.cert-in{border-radius:20px;background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.015))}
.cert h3{font:600 clamp(1rem,1.4vw,1.15rem) var(--body);letter-spacing:-.015em}
.cert .yr{background:rgba(255,255,255,.07);color:#c9c6dc}

/* ---- projects ---- */
.card{border:1px solid rgba(255,255,255,.1);border-radius:22px;box-shadow:0 40px 70px -30px rgba(0,0,0,.8)}
.card-art{filter:saturate(.7) brightness(.78)}
.card-art::before,.card-art::after{display:none}
.card-art .em{font:800 clamp(4.5rem,9vw,7rem)/1 var(--body);letter-spacing:-.06em;color:rgba(255,255,255,.2);filter:none;animation:none;margin-top:-18%}
.card-art .no{background:rgba(0,0,0,.28);backdrop-filter:blur(8px);font-family:var(--mono);color:#fff}
.card::after{background:linear-gradient(180deg,rgba(8,8,14,0) 30%,rgba(8,8,14,.94) 85%)}
.card h3{font-weight:700;letter-spacing:-.025em}
.d-art{border-bottom:0;filter:saturate(.75) brightness(.85)}
.d-art::before{display:none}
.d-art span{font:800 6rem var(--body);letter-spacing:-.06em;color:rgba(255,255,255,.28);filter:none;animation:none}
.d-body h3{font:800 2.2rem var(--body);letter-spacing:-.035em}
.d-body h4{font:600 .8rem var(--body);text-transform:uppercase;letter-spacing:.16em;color:var(--acc2)}
.trail-card{border:0;border-radius:12px;font:800 1.6rem var(--body);letter-spacing:-.04em;color:rgba(255,255,255,.85);filter:saturate(.75) brightness(.9);box-shadow:0 20px 40px -12px rgba(0,0,0,.6)}

/* ---- contact ---- */
.moon{border:0;background:radial-gradient(circle at 35% 35%,#fffdf2,#f1e6c8);box-shadow:0 0 90px 24px rgba(255,244,214,.16)}
.moon i{display:none}
.c-card .ic{color:var(--acc2);background:rgba(217,96,59,.14)}
.socials a{font-family:var(--body);font-weight:600;letter-spacing:0}
.eyebrow{font-weight:600}
