:root{--blue:#0a1f44;--yellow:#d4a64a;--pink:#3b6ea5;--mintc:#f0cf7a;--ink:#08162e;--bg:#eef3f9;--lav:#dbe6f3;--head:'Bricolage Grotesque',system-ui,sans-serif;--sans:'Figtree',system-ui,sans-serif;--shadow:5px 5px 0 var(--ink);--dk:linear-gradient(rgba(6,18,42,.45),rgba(6,18,42,.45));--gl:linear-gradient(rgba(250,228,160,.42),rgba(250,228,160,.42));--lt:linear-gradient(rgba(255,255,255,.84),rgba(255,255,255,.84))}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{font:17px/1.6 var(--sans);color:var(--ink);background:var(--bg)}
a{color:inherit}img{max-width:100%;display:block}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
h1,h2,h3{font-family:var(--head);font-weight:800;line-height:1.02;letter-spacing:-.02em}
h2{font-size:clamp(2.2rem,5vw,3.8rem);margin-bottom:1.2rem}h3{font-size:1.5rem;margin-bottom:.5rem}
p{max-width:60ch;margin-bottom:1rem}
.wrap{width:min(1180px,92%);margin:auto}
.eyebrow{display:inline-block;font:700 .78rem var(--sans);letter-spacing:.12em;text-transform:uppercase;background:#fff;color:var(--ink);border:2px solid var(--ink);border-radius:99px;padding:.25rem .85rem;margin-bottom:1.2rem}
.announce{background:var(--ink);color:var(--yellow);text-align:center;padding:.5rem 4%;font-weight:700;font-size:.9rem}
header.top{position:sticky;top:.8rem;z-index:20;padding:.8rem 0 0}
.pill{width:min(1180px,92%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border:2px solid var(--ink);border-radius:99px;padding:.45rem .5rem .45rem 1.5rem;box-shadow:var(--shadow)}
.logo{font:800 1.6rem var(--head);text-decoration:none;letter-spacing:-.02em}
nav ul{display:flex;gap:.2rem;list-style:none;padding:0}
nav a{display:block;text-decoration:none;font-weight:600;font-size:.9rem;padding:.45rem .85rem;border-radius:99px;transition:background .2s,transform .2s}
nav a:hover{background:var(--lav);transform:rotate(-2deg)}nav a[aria-current]{background:var(--yellow)}
.burger{display:none;background:var(--yellow);border:2px solid var(--ink);border-radius:99px;padding:.35rem 1rem;font:700 .9rem var(--sans)}
.btn{display:inline-block;padding:.85rem 1.6rem;background:var(--ink);color:#fff;border:2px solid var(--ink);border-radius:99px;text-decoration:none;font:700 .95rem var(--sans);cursor:pointer;transition:transform .2s cubic-bezier(.3,1.6,.5,1),box-shadow .2s;box-shadow:0 0 0 var(--ink)}
.btn:hover{transform:translate(-2px,-3px) rotate(-1.5deg);box-shadow:4px 5px 0 var(--pink)}.btn:active{transform:scale(.95)}
.btn.sm{padding:.6rem 1.2rem}.btn.line{background:#fff;color:var(--ink)}
.row{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.4rem}
.hero{padding:2rem 0 3rem}
.bento{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-areas:"n n p" "t y p";gap:1.2rem}
.tile{border:2px solid var(--ink);border-radius:32px;padding:2rem;box-shadow:var(--shadow)}
.t-name{grid-area:n;background:var(--blue);color:#fff;padding:2.5rem}.t-name .eyebrow{border-color:#fff}
.t-name h1{font-size:clamp(4rem,10.5vw,9rem);letter-spacing:-.04em;margin:.2rem 0 1rem}
.role{font-weight:700;max-width:none;font-size:.95rem}.t-name .btn{background:var(--yellow);color:var(--ink);border-color:var(--ink)}.t-name .btn.line{background:#fff}
.t-tag{grid-area:t;background:var(--pink);display:flex;align-items:center}.tag{font:800 1.7rem/1.1 var(--head);margin:0}
.t-intro{grid-area:y;background:var(--yellow)}.t-intro p{font-size:1.1rem}.t-intro a{font-weight:700}
.t-photo{grid-area:p;background:var(--mintc);padding:0;position:relative;overflow:visible}
.arch{height:100%;min-height:380px;border-radius:30px;overflow:hidden;position:relative}.photo-slide{position:absolute;inset:0;display:none}.photo-slide.is-active{display:block;animation:photo-in .6s ease both}.photo-slide img{width:100%;height:100%;object-fit:cover}
.photo-dots{position:absolute;right:18px;bottom:24px;display:flex;gap:.45rem;z-index:1}.photo-dots[hidden]{display:none}.photo-dots button{width:12px;height:12px;padding:0;border:2px solid var(--ink);border-radius:50%;background:#fff;cursor:pointer}.photo-dots button[aria-pressed=true]{background:var(--yellow);transform:scale(1.2)}
@keyframes photo-in{from{opacity:.35}to{opacity:1}}
.ph{display:grid;place-items:center;height:100%;font:800 10rem var(--head);color:var(--ink)}
.sticker{position:absolute;left:18px;bottom:18px;width:118px;height:118px;border-radius:50%;background:var(--yellow);border:2px solid var(--ink);display:grid;place-content:center;text-align:center;font:800 2rem/1 var(--head);box-shadow:3px 3px 0 var(--ink);animation:wob 4.5s ease-in-out infinite}
.sticker small{display:block;font:700 .7rem var(--sans);letter-spacing:.1em;text-transform:uppercase}
@keyframes wob{0%,100%{transform:rotate(-10deg)}50%{transform:rotate(10deg) scale(1.05)}}
section{padding:4.5rem 0}.mint{background:var(--lav)}
.phead{padding:2rem 0 1rem}.phead .wrap{background:var(--blue);color:#fff;border:2px solid var(--ink);border-radius:36px;box-shadow:var(--shadow);padding:3.5rem 3rem}
.phead .eyebrow{border-color:#fff}.phead h1{font-size:clamp(3rem,8vw,6.5rem);letter-spacing:-.03em}.phead p{font-size:1.2rem;margin:.8rem 0 0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start}
.stats{display:flex;gap:1rem;flex-wrap:wrap;margin:1.5rem 0}.stats>div{background:var(--yellow);border:2px solid var(--ink);border-radius:22px;padding:1rem 1.4rem;box-shadow:4px 4px 0 var(--ink)}.stats b{display:block;font:800 3rem/1 var(--head)}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1.4rem}
.card{background:#fff;border:2px solid var(--ink);border-radius:28px;padding:1.8rem;box-shadow:var(--shadow);transition:transform .25s cubic-bezier(.3,1.6,.5,1),box-shadow .25s}
.card:hover{transform:translate(-3px,-5px) rotate(-1deg);box-shadow:9px 10px 0 var(--ink)}
.grid3>.card:nth-child(4n+2){background:var(--yellow)}.grid3>.card:nth-child(4n+3){background:var(--pink)}.grid3>.card:nth-child(4n+4){background:var(--mintc)}
.card img{margin-bottom:1rem;width:100%;border-radius:16px;border:2px solid var(--ink)}
.num{display:inline-block;font:800 .8rem var(--sans);background:var(--ink);color:#fff;border-radius:99px;padding:.15rem .7rem;margin-bottom:.8rem}
.stiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:1.4rem}
.stile{display:flex;flex-direction:column;background:var(--blue);color:#fff;border:2px solid var(--ink);border-radius:30px;padding:1.8rem;box-shadow:var(--shadow);transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.stile:hover{transform:rotate(-1.5deg) translateY(-5px)}.stile:nth-child(4n+2){background:var(--yellow);color:var(--ink)}.stile:nth-child(4n+3){background:var(--pink);color:var(--ink)}.stile:nth-child(4n+4){background:var(--mintc);color:var(--ink)}
.stile i{font:800 3.2rem/1 var(--head);font-style:normal;opacity:.9;margin-bottom:.8rem}.stile p{color:inherit}.stile small{display:block;margin-bottom:.3rem}.stile a{margin-top:auto;align-self:flex-start;background:var(--ink);color:#fff}
.stile div{margin-bottom:1.2rem}
.track{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1.4rem}
.steps{list-style:none;padding:0;counter-reset:s;display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.steps li{counter-increment:s;background:#fff;border:2px solid var(--ink);border-radius:24px;padding:1.3rem;box-shadow:4px 4px 0 var(--ink)}.steps li:nth-child(2){background:var(--yellow)}.steps li:nth-child(3){background:var(--pink)}.steps li:nth-child(4){background:var(--mintc)}
.steps li::before{content:counter(s,decimal-leading-zero);display:block;font:800 2.2rem/1 var(--head);margin-bottom:.4rem}.steps b{display:block;font:800 1.25rem var(--head)}
.note{background:#fff;border:2px dashed var(--ink);border-radius:16px;padding:.9rem 1.1rem;font-size:.9rem;margin-bottom:1.5rem}
.cta .wrap{background:var(--pink);border:2px solid var(--ink);border-radius:40px;box-shadow:var(--shadow);padding:4rem 3rem}.cta{padding:3rem 0}.cta h2{font-size:clamp(2.4rem,6vw,5rem)}
form{display:grid;gap:1.3rem;max-width:720px}label{font-weight:700;font-size:.9rem}
input,select,textarea{width:100%;padding:.85rem 1.1rem;border:2px solid var(--ink);border-radius:16px;background:#fff;font:500 1rem var(--sans);margin-top:.3rem}
input:focus,select:focus,textarea:focus{outline:0;box-shadow:4px 4px 0 var(--blue)}
.err{color:#c0182b;font-size:.85rem;min-height:1em;display:block;font-weight:600}.hp{position:absolute;left:-9999px}
.ok{background:var(--mintc);border:2px solid var(--ink);border-radius:16px;padding:1rem;margin-bottom:1rem}.bad{background:#ffd0d6;border:2px solid var(--ink);border-radius:16px;padding:1rem;margin-bottom:1rem}
#fmsg{font-weight:700}
footer{background:var(--yellow);border:2px solid var(--ink);border-bottom:0;border-radius:44px 44px 0 0;margin-top:3rem;padding:4.5rem 0 1.5rem}
footer .big{font:800 clamp(2.4rem,7vw,6rem)/.95 var(--head);letter-spacing:-.03em;margin-bottom:3rem;max-width:none}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;font-size:.95rem}footer h4{font:800 1.1rem var(--head);margin-bottom:.5rem}footer a{display:block;text-decoration:none;margin:.25rem 0;font-weight:600}footer a:hover{text-decoration:underline}
.copy{text-align:center;margin-top:3rem;font-size:.85rem;max-width:none}
.wa{position:fixed;right:18px;bottom:18px;z-index:30;background:var(--mintc);color:var(--ink);padding:.75rem 1.2rem;border:2px solid var(--ink);border-radius:99px;text-decoration:none;font-weight:800;box-shadow:3px 3px 0 var(--ink)}
.js .rv{opacity:0;transform:scale(.94) translateY(22px)}.js .rv.in{opacity:1;transform:none;transition:opacity .5s,transform .7s cubic-bezier(.3,1.5,.5,1)}
@media(max-width:900px){.bento{grid-template-columns:1fr;grid-template-areas:"n" "p" "t" "y"}.arch{min-height:320px}.split,footer .cols{grid-template-columns:1fr}.sticker{left:auto;right:14px;bottom:14px}
.burger{display:block}.pill{padding-left:1.2rem}header nav{display:none;position:absolute;left:4%;right:4%;top:calc(100% + .6rem);background:#fff;border:2px solid var(--ink);border-radius:28px;padding:1rem;box-shadow:var(--shadow)}header nav:has(ul.open){display:block}nav ul{flex-direction:column}nav a{font-size:1.2rem;padding:.7rem 1rem}.pill>.btn{display:none}.phead .wrap,.cta .wrap{padding:2.5rem 1.6rem}.steps{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.js .rv{opacity:1;transform:none}}

/* ===== Navy & Gold textured theme (uses the supplied reference images) ===== */
.announce{background:var(--ink);color:var(--yellow)}
.mint{background:linear-gradient(rgba(238,243,249,.93),rgba(238,243,249,.93)),url(../images/tex-art.jpg) center/cover}
.t-name{background:var(--dk),url(../images/tex-grain.jpg) center/cover;color:#fff}
.t-photo{background:url(../images/tex-blocks.jpg) center/cover}.ph{color:var(--mintc)}
.t-tag,.sticker,.stats>div{background:var(--gl),url(../images/foil.jpg) center/cover;color:var(--ink)}
.t-intro{background:var(--lt),url(../images/tex-hex.jpg) center/cover}
.phead .wrap{background:var(--dk),url(../images/tex-gradient.jpg) center/cover}
.card:nth-child(4n+2){background:var(--gl),url(../images/foil.jpg) center/cover}
.card:nth-child(4n+3){background:var(--dk),url(../images/tex-dark.jpg) center/cover;color:#fff}
.card:nth-child(4n+4){background:var(--lt),url(../images/tex-art.jpg) center/cover}
.grid3>.card:nth-child(4n+2){background:var(--gl),url(../images/foil.jpg) center/cover}.grid3>.card:nth-child(4n+3){background:var(--dk),url(../images/tex-dark.jpg) center/cover;color:#fff}.grid3>.card:nth-child(4n+4){background:var(--lt),url(../images/tex-art.jpg) center/cover}
.card:nth-child(4n+3) .num{background:var(--yellow);color:var(--ink)}.card:nth-child(4n+3) a{color:var(--mintc)}
.stile{background:var(--dk),url(../images/tex-grain.jpg) center/cover;color:#fff}
.stile:nth-child(6n+2){background:var(--gl),url(../images/foil.jpg) center/cover;color:var(--ink)}
.stile:nth-child(6n+3){background:var(--lt),url(../images/tex-art.jpg) center/cover;color:var(--ink)}
.stile:nth-child(6n+4){background:var(--dk),url(../images/tex-dark.jpg) center/cover;color:#fff}
.stile:nth-child(6n+5){background:var(--dk),url(../images/tex-gradient.jpg) center/cover;color:#fff}
.stile:nth-child(6n+6){background:var(--lt),url(../images/tex-hex.jpg) center/cover;color:var(--ink)}
.stile:nth-child(6n+1) i,.stile:nth-child(6n+4) i,.stile:nth-child(6n+5) i{color:var(--mintc)}
.stile:nth-child(6n+1) a,.stile:nth-child(6n+4) a,.stile:nth-child(6n+5) a{background:var(--yellow);color:var(--ink)}
.steps li{background:var(--dk),url(../images/tex-grain.jpg) center/cover;color:#fff}.steps li:nth-child(2){background:var(--gl),url(../images/foil.jpg) center/cover;color:var(--ink)}
.steps li:nth-child(3){background:var(--lt),url(../images/tex-art.jpg) center/cover;color:var(--ink)}.steps li:nth-child(4){background:var(--dk),url(../images/tex-dark.jpg) center/cover;color:#fff}
.cta .wrap{background:var(--dk),url(../images/tex-dark.jpg) center/cover;color:#fff}.cta .btn{background:var(--yellow);color:var(--ink)}.cta .btn.line{background:#fff}
footer{background:linear-gradient(rgba(6,18,42,.62),rgba(6,18,42,.62)),url(../images/tex-grain.jpg) center/cover;color:#dbe6f3}
footer .big{color:#fff}footer h4{color:var(--mintc)}footer a{color:#fff}
.ok{background:var(--lav)}.btn:hover{box-shadow:4px 5px 0 var(--pink)}
input:focus,select:focus,textarea:focus{box-shadow:4px 4px 0 var(--pink)}
.sticker{color:var(--ink)}.num{background:var(--ink);color:var(--mintc)}
