@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700;800&family=Open+Sans:wght@400;500;600;700&display=swap');
:root{--navy:#081521;--blue:#183a53;--gold:#d5ad59;--paper:#f5f1e8;--ink:#172536;--muted:#66717a;--line:#d7c7a5;--shadow:0 16px 38px #07111b24}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.7 'Open Sans',Arial,sans-serif;color:var(--ink);background:var(--paper)}a{color:inherit}header{background:#081521f5;color:white;position:sticky;top:0;z-index:5;border-bottom:1px solid #a87935;box-shadow:0 5px 20px #0004}.bar{max-width:1220px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:14px 24px;gap:24px}.logo{font-family:'Cinzel',Georgia,serif;font-weight:800;letter-spacing:1.5px;text-decoration:none;font-size:21px;line-height:1.15;color:#fff}.logo:before{content:'✥';color:var(--gold);margin-right:9px}.logo small{display:block;color:var(--gold);font-size:11px;letter-spacing:3px;margin-left:28px}nav{display:flex;gap:21px;flex-wrap:wrap}nav a{text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}nav a:hover,nav a[aria-current=page]{color:var(--gold)}.wrap{max-width:1160px;margin:auto}.hero{position:relative;overflow:hidden;isolation:isolate;min-height:540px;padding:88px 24px 78px;color:white;background:#081521 url('../images/hero-sea.svg') center 43%/cover no-repeat}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#07131df2 0%,#0a1925d9 36%,#0a192575 68%,#0a192540 100%)}.hero .wrap{max-width:1160px}.eyebrow{color:var(--gold);font-size:12px;letter-spacing:2.2px;text-transform:uppercase;font-weight:800}.hero h1{font-family:'Cinzel',Georgia,serif;font-size:clamp(42px,6.8vw,82px);line-height:1.02;letter-spacing:1px;margin:15px 0 12px;text-shadow:0 3px 20px #0008}.hero h1 span{display:block;color:var(--gold);font-size:.57em;letter-spacing:3px;margin-top:14px}.hero h2{font-size:clamp(20px,2.3vw,28px);font-weight:600;margin:22px 0 8px}.hero p{font-size:18px;color:#e1e7ef;max-width:570px}.btn{display:inline-block;border:1px solid var(--gold);border-radius:4px;background:linear-gradient(#e7c574,#c8993f);color:#101b2b;padding:12px 20px;text-decoration:none;font-weight:800;margin:10px 10px 0 0;cursor:pointer;font:700 13px 'Open Sans',sans-serif;text-transform:uppercase;letter-spacing:.6px;box-shadow:0 5px 15px #0002}.btn.secondary{background:#071521b8;color:white}.btn:hover{filter:brightness(1.12);transform:translateY(-1px)}section{padding:62px 24px}.section-title{text-align:center;margin:0 0 32px;font:700 clamp(26px,3vw,36px) 'Cinzel',Georgia,serif}.section-title:before,.section-title:after{content:' ✦ ';color:var(--gold);font-size:.7em}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.card{overflow:hidden;background:#fffdf8;border:1px solid #d8c7a6;border-radius:8px;box-shadow:var(--shadow);padding:0 22px 22px;position:relative}.card h3{font:700 19px 'Cinzel',Georgia,serif;margin:16px 0 8px}.card p{font-size:14px;color:#53606b}.card a{color:#8b5e19;font-weight:800;text-decoration:none;font-size:13px}.card a:hover{text-decoration:underline}.card-art{height:150px;margin:0 -22px 17px;background:#183a53 center/cover no-repeat;border-bottom:3px solid var(--gold)}.art-beginner{background-image:url('../images/beginner.svg')}.art-heroes{background-image:url('../images/heroes.svg')}.art-buildings{background-image:url('../images/buildings.svg')}.art-events{background-image:url('../images/events.svg')}.alt{background:#e8e0d0;background-image:linear-gradient(135deg,#f3ead7,#e3d7bd)}.callout{background:linear-gradient(110deg,#10283a,#071521);color:white;border:1px solid #b98b42;border-radius:8px;padding:36px;box-shadow:var(--shadow);position:relative;overflow:hidden}.callout:after{content:'';position:absolute;width:160px;height:160px;right:28px;top:15px;background:url('../images/compass.svg') center/contain no-repeat;opacity:.35}.callout h2{color:var(--gold);margin-top:0;font-family:'Cinzel',Georgia,serif}.page-head{color:white;padding:60px 24px;background:#102b3c url('../images/hero-sea.svg') center 48%/cover no-repeat;position:relative;isolation:isolate}.page-head:before{content:'';position:absolute;inset:0;background:#091723c9;z-index:-1}.page-head h1{font:700 clamp(36px,5vw,54px) 'Cinzel',Georgia,serif;margin:5px 0}.page-head p{max-width:700px;color:#e4e9ed}.article{max-width:850px;margin:34px auto;background:#fffdf8;padding:clamp(22px,4vw,42px);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.article h2{font:700 26px 'Cinzel',Georgia,serif}.muted{color:var(--muted)}form{max-width:760px;background:#fffdf8;padding:clamp(20px,4vw,34px);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:8px;box-shadow:var(--shadow)}label{display:block;font-weight:700;margin:16px 0 5px}input,select,textarea{font:inherit;width:100%;padding:12px;border:1px solid #b9b5ab;border-radius:4px;background:white}textarea{min-height:150px}input[type=checkbox]{width:auto}.notice{background:#fff3d6;border-left:4px solid var(--gold);padding:12px 16px;margin:20px 0}footer{background:var(--navy);color:#d6dfeb;padding:30px 22px;font-size:13px;border-top:2px solid #987035}footer a{color:var(--gold)}.menu-toggle{display:none}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid #a87935;background:#0d2030;color:white;margin-top:-1px}.feature{padding:22px 18px;text-align:center;border-right:1px solid #a8793566}.feature:last-child{border:0}.feature strong{display:block;color:var(--gold);font:700 14px 'Cinzel',Georgia,serif}.feature span{font-size:13px;color:#d7e0e7}.feature .symbol{font-size:30px;display:block;color:var(--gold);margin-bottom:6px}.content-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.content-list .card{padding:20px}.small-eyebrow{font-size:11px;color:#96691f;letter-spacing:1px;font-weight:800;text-transform:uppercase}@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bar{align-items:flex-start;flex-wrap:wrap}.menu-toggle{display:block;background:transparent;border:1px solid var(--gold);color:white;padding:7px 11px;cursor:pointer;border-radius:4px}nav{display:none;width:100%;flex-direction:column;gap:12px;padding:12px 0}nav.open{display:flex}.hero{padding:68px 22px;min-height:480px}.feature-grid{grid-template-columns:repeat(2,1fr)}.feature:nth-child(2){border-right:0}.feature:nth-child(-n+2){border-bottom:1px solid #a8793566}.content-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.grid,.content-list{grid-template-columns:1fr}.card-art{height:180px}.article{margin:18px 12px;padding:20px}.page-head h1{font-size:34px}.hero{padding:55px 20px}.hero p{font-size:16px}.feature-grid{grid-template-columns:1fr}.feature{border-right:0;border-bottom:1px solid #a8793566}.feature:last-child{border-bottom:0}.callout{padding:25px}.callout:after{opacity:.16}}

/* ===== Visual upgrade layer ===== */
.hero{min-height:620px;padding-top:110px;background-position:center 60%}
.hero:before{background:linear-gradient(90deg,#050d17f0 0%,#07131dcc 30%,#0a192540 62%,#0a192500 100%)}
.hero:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:70px;z-index:-1;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 70' preserveAspectRatio='none'%3E%3Cpath d='M0 40Q150 0 300 35T600 35T900 35T1200 30V70H0Z' fill='%230d2030'/%3E%3C/svg%3E") bottom/100% 100% no-repeat}
.rain{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.55;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cg stroke='%23bcd8e8' stroke-width='1.2' stroke-linecap='round' opacity='.7'%3E%3Cpath d='M20 10l-6 22M70 50l-6 22M120 20l-6 22M40 100l-6 22M100 110l-6 22M140 70l-6 22M10 140l-6 18'/%3E%3C/g%3E%3C/svg%3E");animation:rain .7s linear infinite}
@keyframes rain{to{background-position:-48px 160px}}
.flash{position:absolute;inset:0;z-index:-1;pointer-events:none;background:#cfe3ff;opacity:0;animation:flash 7s infinite}
@keyframes flash{0%,88%,100%{opacity:0}89%{opacity:.16}90%{opacity:.02}91%{opacity:.2}95%{opacity:0}}
.hero .wrap>*{animation:rise .8s both}.hero .wrap>*:nth-child(2){animation-delay:.1s}.hero .wrap>*:nth-child(3){animation-delay:.2s}.hero .wrap>*:nth-child(4){animation-delay:.3s}.hero .wrap>*:nth-child(5){animation-delay:.4s}.hero .wrap>*:nth-child(6){animation-delay:.5s}
@keyframes rise{from{opacity:0;transform:translateY(18px)}}
.hero h1{background:linear-gradient(#fff,#f3dfae);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 18px #000a)}
.hero h1 span{background:linear-gradient(#f4d98f,#c8993f);-webkit-background-clip:text;background-clip:text;color:transparent}
.feature{transition:.25s;position:relative}.feature:hover{background:#12304a}.feature svg{width:38px;height:38px;display:block;margin:0 auto 8px;stroke:var(--gold);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:.25s}.feature:hover svg{transform:translateY(-3px) scale(1.1);filter:drop-shadow(0 0 8px #d5ad59aa)}
.section-title{position:relative;padding-bottom:20px}.section-title:before,.section-title:after{content:none}
.section-title:after{content:'';display:block;position:absolute;left:50%;bottom:0;width:180px;height:14px;transform:translateX(-50%);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 14'%3E%3Cpath d='M0 7H70M110 7H180' stroke='%23d5ad59' stroke-width='1.5'/%3E%3Cpath d='M90 0 98 7 90 14 82 7Z' fill='%23d5ad59'/%3E%3Ccircle cx='74' cy='7' r='2.5' fill='%23d5ad59'/%3E%3Ccircle cx='106' cy='7' r='2.5' fill='%23d5ad59'/%3E%3C/svg%3E") center/contain no-repeat}
.card{transition:transform .3s,box-shadow .3s,border-color .3s}.card:hover{transform:translateY(-6px);box-shadow:0 22px 44px #07111b3d;border-color:var(--gold)}
.card-art{height:170px;position:relative;overflow:hidden;transition:.5s}.card:hover .card-art{background-size:112%}
.card-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 55%,#081521aa)}
.card-art{background-size:100%}
.art-resources{background-image:url('../images/resources.svg')}.art-tips{background-image:url('../images/tips.svg')}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.badge{display:inline-block;margin:0 0 10px;font:700 11px 'Open Sans',sans-serif;letter-spacing:1.2px;text-transform:uppercase;color:#101b2b;background:linear-gradient(#e7c574,#c8993f);padding:3px 10px;border-radius:20px}
.badge.soon{background:#d9d2c0;color:#5a5546}
.card.soon{opacity:.92}.card.soon .card-art{filter:saturate(.6) brightness(.9)}
.tip-icon{width:62px;height:62px;border-radius:50%;margin:22px 0 4px;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,#1f4a68,#0d2030);border:2px solid var(--gold);box-shadow:0 6px 16px #0003}
.tip-icon svg{width:30px;height:30px;stroke:var(--gold);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tip-num{position:absolute;right:16px;top:12px;font:800 54px 'Cinzel',serif;color:#d5ad5922;line-height:1}
.page-head{padding:78px 24px 92px;background-position:center 55%}
.page-head:before{background:linear-gradient(90deg,#050d17ee,#0a1925a0 60%,#0a192550)}
.page-head:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:44px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 44' preserveAspectRatio='none'%3E%3Cpath d='M0 26Q150 0 300 22T600 22T900 22T1200 18V44H0Z' fill='%23f5f1e8'/%3E%3C/svg%3E") bottom/100% 100% no-repeat}
.page-head .eyebrow:before{content:'⚓ '}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}
.callout:after{opacity:.5;animation:spin 60s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.callout{background:radial-gradient(circle at 85% 50%,#1d4a6a,transparent 45%),linear-gradient(110deg,#10283a,#071521)}
@media(max-width:900px){.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{min-height:520px}.hero:before{background:linear-gradient(#050d17e6,#0a1925b0)}}
@media(max-width:560px){.grid.three{grid-template-columns:1fr}.page-head{padding:56px 20px 74px}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:560px){.callout:after{opacity:.14}}

/* Collage-inspired art direction: cinematic navy, gilded frames and parchment */
body{background:#07131d}main{background:var(--paper)}.hero{background-position:center 52%;min-height:590px}.hero .wrap{max-width:1160px}.hero h1{max-width:720px}.feature-grid{border-top:2px solid var(--gold);box-shadow:0 10px 24px #0005}.feature{background:linear-gradient(145deg,#10283a,#07131d);padding:25px 12px}.feature strong{letter-spacing:.6px}.card{border:1px solid #c7a05a;border-radius:5px}.card-art{height:190px}.page-head{border-bottom:3px solid var(--gold)}.alt{background-color:#f1e5ce;background-image:radial-gradient(#9e7e4722 1px,transparent 1px),linear-gradient(130deg,#f7edd9,#dfcfac);background-size:18px 18px,auto}.section-title{letter-spacing:1px}.callout{border:2px solid #c59b50}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.turnstile-container{margin:18px 0}#form-status{font-weight:700;min-height:1.5em}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b78123;outline-offset:3px}@media(max-width:560px){.form-grid{grid-template-columns:1fr}.hero{min-height:510px}}

/* Clickable guide cards */
.card-link { display:block; color:inherit; text-decoration:none; cursor:pointer; position:relative; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.card-link:hover { transform:translateY(-5px); }
.card-link:focus-visible { outline:3px solid var(--gold, #d5ad59); outline-offset:4px; }
.card-link .card-cta { display:inline-block; margin-top:.65rem; color:var(--gold, #d5ad59); font-weight:700; }
.card-link .card-art { transition:transform .25s ease, filter .25s ease; }
.card-link:hover .card-art { transform:scale(1.02); filter:brightness(1.08); }
.category-intro { display:grid; grid-template-columns:minmax(140px,220px) 1fr; gap:2rem; align-items:center; margin-bottom:2.5rem; padding:1.5rem; border:1px solid rgba(213,173,89,.28); background:rgba(16,27,43,.55); border-radius:18px; }
.category-intro img { width:100%; max-height:180px; object-fit:contain; }
.article { padding-top:4rem; padding-bottom:5rem; }
.article .lede { font-size:1.15rem; max-width:760px; opacity:.86; }
.article-body { max-width:820px; margin:2.5rem 0; padding:2rem; background:var(--parchment, #f5f1e8); color:var(--navy, #172536); border-radius:16px; }
.article-body h2 { margin-top:1.5rem; }
.article-body h2:first-child { margin-top:0; }
.article-body li { margin:.55rem 0; }
@media (max-width:700px) { .category-intro { grid-template-columns:1fr; text-align:center; } .category-intro img { max-height:140px; } }


/* Category landing pages: cinematic artwork + clean guide library */
.category-page{background:var(--paper)}
.category-hero{min-height:440px;position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);align-items:center;gap:2rem;padding:62px max(24px,calc((100vw - 1160px)/2));color:#fff;background:radial-gradient(ellipse at 75% 40%,#234c65 0%,#10283a 38%,#07131d 78%)}
.category-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#07131df2,#07131d9c 62%,#07131d40)}
.category-hero-text{max-width:680px;z-index:1}.breadcrumb{color:#f0d18b;text-decoration:none;font-size:.82rem}.breadcrumb:hover{text-decoration:underline}.breadcrumb-sep{color:#aab6bd;margin:0 .4rem}.category-hero .eyebrow{margin-top:26px}.category-hero h1{font:700 clamp(2.5rem,5vw,4.6rem)/1.08 'Cinzel',Georgia,serif;margin:.35rem 0 1rem;color:#f6e8c6;text-shadow:0 4px 20px #0008}.category-lede{font-size:1.08rem;max-width:620px;color:#e1e7ed}.category-hero-art{display:grid;place-items:center;min-height:270px;position:relative}.category-hero-art:before{content:"";position:absolute;width:min(90%,340px);aspect-ratio:1;border:1px solid #d5ad5980;border-radius:50%;box-shadow:0 0 0 16px #d5ad5910,0 0 70px #d5ad5922}.category-hero-art img{width:min(100%,350px);height:300px;object-fit:contain;filter:drop-shadow(0 18px 22px #0008);position:relative}.category-hero-ornament{position:absolute;right:3%;bottom:-100px;font-size:300px;color:#d5ad590d;pointer-events:none}
.featured-section{padding:58px 24px 66px;background:linear-gradient(#f5f1e8,#eee4d1)}.section-heading-row{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:24px}.section-heading-row h2{font:700 clamp(1.8rem,3vw,2.6rem)/1.2 'Cinzel',Georgia,serif;margin:.15rem 0;color:#14283a}.section-heading-mark{font-size:2.3rem;color:#b68a3e}.featured-guide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:270px;overflow:hidden;border:1px solid #c9a45d;border-radius:8px;background:#fffdf8;box-shadow:0 18px 45px #07111b1c;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s}.featured-guide:hover{transform:translateY(-4px);box-shadow:0 24px 50px #07111b2b}.featured-guide-art{position:relative;display:grid;place-items:center;min-height:260px;background:radial-gradient(circle at center,#244d66,#0b1b29 72%);overflow:hidden}.featured-guide-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#06111d70,transparent 60%)}.featured-guide-art img{width:80%;height:230px;object-fit:contain;filter:drop-shadow(0 12px 18px #0007);transition:transform .35s}.featured-guide:hover .featured-guide-art img{transform:scale(1.05)}.featured-ribbon{position:absolute;top:18px;left:18px;z-index:1;background:linear-gradient(#efd18a,#c49a48);color:#132536;padding:6px 12px;border-radius:2px;font-size:.67rem;font-weight:800;letter-spacing:1.1px}.featured-guide-copy{padding:clamp(24px,4vw,42px);align-self:center}.featured-guide-copy h3{font:700 clamp(1.5rem,2.5vw,2.15rem)/1.2 'Cinzel',Georgia,serif;margin:.6rem 0}.featured-guide-copy p{color:#56616a;max-width:520px}.featured-guide-copy .btn{margin-top:8px}
.guide-library{padding:62px 24px 72px;background:var(--paper)}.library-intro{max-width:650px;color:#59646d;margin:.4rem 0 0}.guide-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px}.guide-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #c7a05a;border-radius:6px;background:#fffdf8;color:inherit;text-decoration:none;box-shadow:0 12px 30px #07111b16;transition:transform .25s,box-shadow .25s,border-color .25s}.guide-card:hover{transform:translateY(-6px);border-color:#9a6d24;box-shadow:0 20px 38px #07111b29}.guide-card:focus-visible,.featured-guide:focus-visible{outline:3px solid #b78123;outline-offset:4px}.guide-card-art{height:175px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 35%,#28516b,#0c1d2b 75%);border-bottom:3px solid var(--gold)}.guide-card-art img{width:80%;height:155px;object-fit:contain;filter:drop-shadow(0 8px 12px #0006);transition:transform .3s}.guide-card:hover .guide-card-art img{transform:scale(1.08)}.guide-card-copy{padding:20px 22px 23px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.guide-card-copy h3{font:700 1.15rem/1.35 'Cinzel',Georgia,serif;margin:.35rem 0}.guide-card-copy p{font-size:.9rem;color:#59646d;margin:.3rem 0 1rem}.guide-card-copy .card-cta{margin-top:auto;padding-top:.5rem;color:#8a5c17;font-weight:800;font-size:.88rem}.editor-note{margin-top:34px;padding:17px 20px;background:#e9dfcb;border-left:4px solid var(--gold);color:#36424b;font-size:.9rem}.editor-note code{background:#fff8e9;padding:2px 5px;border-radius:3px}.back-home{margin-top:28px}.back-home a{font-weight:800;color:#825819;text-decoration:none}.back-home a:hover{text-decoration:underline}
@media(max-width:760px){.category-hero{grid-template-columns:1fr;padding:48px 24px 36px;gap:.5rem}.category-hero-art{min-height:190px}.category-hero-art img{height:205px}.category-hero-art:before{width:190px}.featured-guide{grid-template-columns:1fr}.featured-guide-art{min-height:210px}.featured-guide-art img{height:185px}.guide-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.guide-card-grid{grid-template-columns:1fr}.guide-card-art{height:195px}.category-hero{padding-left:20px;padding-right:20px}.featured-section,.guide-library{padding-left:18px;padding-right:18px}.section-heading-row{align-items:start}}


/* =====================================================================
   DRAMATIC VISUAL UPGRADE — night storm, gilded frames, candlelit gold
   (art direction taken from the reference images: dark navy sea & sky,
   ornate brass frames, glowing light sources, parchment accents)
   ===================================================================== */
:root{--gold-hi:#f7de9c;--gold-lo:#8a5d1c;--night:#050d17;--deep:#0a1b2a;--teal:#12384d;--cream:#f6e8c6;
--gilt:linear-gradient(145deg,#f7de9c,#b98a35 30%,#f0cf80 52%,#7a5018 78%,#d9ac55)}
body{background:var(--night)}
header{background:linear-gradient(#030a12f7,#081521f2);border-bottom:1px solid #c79a4a;box-shadow:0 6px 28px #000a,0 1px 0 #f7de9c40 inset}
.logo:before{text-shadow:0 0 12px #f0cf80}
nav a:hover,nav a[aria-current=page]{text-shadow:0 0 12px #d5ad59aa}

/* ---------- Category hero: storm at night ---------- */
.category-page{background:var(--night)}
.category-hero{min-height:560px;padding-top:70px;padding-bottom:120px;
 background:radial-gradient(ellipse 60% 70% at 78% 38%,#1f5d78 0%,#123a52 35%,transparent 70%),linear-gradient(#030a12 0%,#0a2234 55%,#0d3148 100%)}
.category-hero:before{z-index:-1;background:linear-gradient(90deg,#030a12e8 0%,#030a12a8 38%,#030a1230 66%,transparent 100%),radial-gradient(ellipse at 50% 120%,#000a,transparent 60%)}
.hero-fx{position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:hidden}
.hero-fx i{position:absolute;display:block}
.fx-stars{inset:0 0 35% 0;background-image:
 radial-gradient(1.6px 1.6px at 40px 60px,#fff,transparent),radial-gradient(1.2px 1.2px at 130px 150px,#ffeab5,transparent),
 radial-gradient(2px 2px at 260px 40px,#fff,transparent),radial-gradient(1.2px 1.2px at 330px 210px,#fff,transparent),
 radial-gradient(1.6px 1.6px at 440px 110px,#ffe6a8,transparent),radial-gradient(1.2px 1.2px at 520px 250px,#fff,transparent),
 radial-gradient(1.2px 1.2px at 90px 270px,#fff,transparent),radial-gradient(2px 2px at 580px 30px,#fff,transparent);
 background-size:620px 300px;opacity:.9;animation:twinkle 5s ease-in-out infinite alternate}
.fx-stars:after{content:'';position:absolute;inset:0;background-image:radial-gradient(1.4px 1.4px at 200px 100px,#fff,transparent),radial-gradient(1px 1px at 380px 60px,#ffe6a8,transparent),radial-gradient(1.8px 1.8px at 60px 200px,#fff,transparent),radial-gradient(1px 1px at 470px 190px,#fff,transparent);background-size:510px 260px;animation:twinkle 3.2s ease-in-out infinite alternate-reverse}
@keyframes twinkle{from{opacity:.35}to{opacity:1}}
.fx-clouds{inset:-10% -10% 18% -10%;background:
 radial-gradient(ellipse 420px 130px at 14% 72%,#2c6a7d99,transparent 70%),
 radial-gradient(ellipse 520px 160px at 52% 22%,#1d4b6399,transparent 70%),
 radial-gradient(ellipse 360px 120px at 88% 66%,#d9c58f55,transparent 70%),
 radial-gradient(ellipse 300px 90px at 70% 80%,#4f8e9a66,transparent 70%),
 radial-gradient(ellipse 380px 110px at 30% 40%,#0b1f3199,transparent 70%);
 filter:blur(10px);animation:cloudDrift 28s ease-in-out infinite alternate}
@keyframes cloudDrift{to{transform:translateX(5%)}}
.fx-rain{inset:0;opacity:.28;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cg stroke='%23bcd8e8' stroke-width='1.1' stroke-linecap='round' opacity='.7'%3E%3Cpath d='M20 10l-6 22M70 50l-6 22M120 20l-6 22M40 100l-6 22M100 110l-6 22M140 70l-6 22M10 140l-6 18'/%3E%3C/g%3E%3C/svg%3E");animation:rain .6s linear infinite}
.fx-flash{inset:0;background:radial-gradient(ellipse at 70% 15%,#e6f0ff,#8fb4e0 40%,transparent 75%);opacity:0;animation:flash 8s infinite}
.fx-waves{left:0;right:0;bottom:0;height:130px;opacity:1;filter:brightness(1.6) saturate(1.2);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 130' preserveAspectRatio='none'%3E%3Cpath d='M0 70Q100 32 200 70T400 70V130H0Z' fill='%230c3a52'/%3E%3Cpath d='M0 70Q100 32 200 70T400 70' fill='none' stroke='%23bfe6ee' stroke-width='3' opacity='.55'/%3E%3C/svg%3E") repeat-x,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 130' preserveAspectRatio='none'%3E%3Cpath d='M0 80Q100 42 200 80T400 80V130H0Z' fill='%23061b2e'/%3E%3Cpath d='M0 80Q100 42 200 80T400 80' fill='none' stroke='%23e8f6f8' stroke-width='3' opacity='.55'/%3E%3C/svg%3E") repeat-x;background-size:520px 110px,380px 120px;background-position:0 bottom,0 bottom;animation:waves 16s linear infinite}
@keyframes waves{to{background-position:-520px bottom,380px bottom}}
.category-hero:after{content:'';position:absolute;left:0;right:0;bottom:0;height:36px;z-index:0;pointer-events:none;background:linear-gradient(transparent,#050d17b0)}
.category-hero-text{z-index:2}
.category-hero h1{background:linear-gradient(#fff8e2,#f3d58f 60%,#d8a94d);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 22px #000c) drop-shadow(0 0 24px #d5ad5940);letter-spacing:.5px}
.category-hero .eyebrow{color:#f0cf80;text-shadow:0 0 14px #d5ad5966}
.category-hero .eyebrow:before{content:'';display:inline-block;width:38px;height:1px;background:linear-gradient(90deg,transparent,#d5ad59);vertical-align:middle;margin-right:12px}
.category-lede{color:#d9e4ec;text-shadow:0 2px 10px #000a}
.category-hero .btn{box-shadow:0 0 0 1px #f7de9c55,0 8px 22px #000a,0 0 26px #d5ad5940}
.category-hero .btn:hover{box-shadow:0 0 0 1px #f7de9c,0 10px 28px #000a,0 0 38px #d5ad5980}

/* glowing starburst (light source in the sky) */
.category-hero-ornament{font-size:0;color:transparent;right:auto;bottom:auto;left:46%;top:34px;width:210px;height:210px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cdefs%3E%3CradialGradient id='g'%3E%3Cstop offset='0' stop-color='%23fff6d0'/%3E%3Cstop offset='.25' stop-color='%23ffd98a' stop-opacity='.8'/%3E%3Cstop offset='1' stop-color='%23ffd98a' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='100' cy='100' r='60' fill='url%28%23g%29'/%3E%3Cpath d='M114.0 100.0L196.0 100.0M113.8 102.4L163.0 111.1M113.2 104.8L190.2 132.8M112.1 107.0L155.4 132.0M110.7 109.0L173.5 161.7M109.0 110.7L141.1 149.0M107.0 112.1L148.0 183.1M104.8 113.2L121.9 160.1M102.4 113.8L116.7 194.5M100.0 114.0L100.0 164.0M97.6 113.8L83.3 194.5M95.2 113.2L78.1 160.1M93.0 112.1L52.0 183.1M91.0 110.7L58.9 149.0M89.3 109.0L26.5 161.7M87.9 107.0L44.6 132.0M86.8 104.8L9.8 132.8M86.2 102.4L37.0 111.1M86.0 100.0L4.0 100.0M86.2 97.6L37.0 88.9M86.8 95.2L9.8 67.2M87.9 93.0L44.6 68.0M89.3 91.0L26.5 38.3M91.0 89.3L58.9 51.0M93.0 87.9L52.0 16.9M95.2 86.8L78.1 39.9M97.6 86.2L83.3 5.5M100.0 86.0L100.0 36.0M102.4 86.2L116.7 5.5M104.8 86.8L121.9 39.9M107.0 87.9L148.0 16.9M109.0 89.3L141.1 51.0M110.7 91.0L173.5 38.3M112.1 93.0L155.4 68.0M113.2 95.2L190.2 67.2M113.8 97.6L163.0 88.9' stroke='%23f1cf80' stroke-width='1.2' opacity='.9'/%3E%3Ccircle cx='100' cy='100' r='9' fill='%23fff8dc'/%3E%3C/svg%3E") center/contain no-repeat;opacity:.95;filter:drop-shadow(0 0 18px #ffd98a);animation:burst 6s ease-in-out infinite alternate;z-index:1}
@keyframes burst{from{transform:scale(.88) rotate(-4deg);opacity:.7}to{transform:scale(1.06) rotate(4deg);opacity:1}}

/* gilded arched window around the artwork */
.category-hero-art{position:relative;isolation:isolate;justify-self:center;width:min(100%,370px);height:470px;min-height:0;padding:16px 16px 40px;
 border-radius:999px 999px 14px 14px;
 background:
  radial-gradient(circle 13px at 20px calc(100% - 20px),var(--gold-hi),#a87028 60%,#4a2c08 62%,transparent 64%),
  radial-gradient(circle 13px at calc(100% - 20px) calc(100% - 20px),var(--gold-hi),#a87028 60%,#4a2c08 62%,transparent 64%),
  radial-gradient(circle 11px at 50% calc(100% - 20px),var(--gold-hi),#a87028 60%,#4a2c08 62%,transparent 64%),
  linear-gradient(90deg,transparent 28px,#4a2c0899 28px,#4a2c0899 calc(50% - 22px),transparent calc(50% - 22px)) bottom 19px left 0/100% 2px no-repeat,
  var(--gilt);
 box-shadow:0 0 0 2px #3a2208,0 0 0 4px #e9c577,0 0 90px #d5ad5938,0 36px 70px #000c,inset 0 0 0 1px #fff3;
 transform:translateY(0);transition:transform .5s}
.category-hero-art:hover{transform:translateY(-4px)}
.category-hero-art:before{inset:-46px;width:auto;aspect-ratio:auto;border:0;border-radius:50%;z-index:-1;background:radial-gradient(circle,#ffd98a40 0%,#d5ad5920 35%,transparent 66%);box-shadow:none;animation:burst 7s ease-in-out infinite alternate}
.category-hero-art img{width:100%;height:100%;object-fit:cover;border-radius:999px 999px 4px 4px;filter:saturate(1.35) contrast(1.18) brightness(.78) hue-rotate(-6deg);box-shadow:inset 0 0 0 2px #2a1805;position:relative}
.category-hero-art:after{content:'';position:absolute;left:16px;right:16px;top:16px;bottom:40px;border-radius:999px 999px 4px 4px;pointer-events:none;
 background:radial-gradient(ellipse at 50% 38%,transparent 25%,#02080fb0 100%),linear-gradient(#0a1f3a66,transparent 40%,#02101fa6);box-shadow:inset 0 0 40px #000b,inset 0 0 0 2px #00000066}

/* ---------- Featured guide: gilded showpiece ---------- */
.featured-section{position:relative;overflow:hidden;padding:60px 24px 74px;background:radial-gradient(ellipse 70% 80% at 20% 30%,#123b52,transparent 70%),linear-gradient(#050d17,#0a1c2c 60%,#071522)}
.featured-section:before,.guide-library:before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.7;background-image:radial-gradient(1.4px 1.4px at 60px 40px,#fff,transparent),radial-gradient(1px 1px at 190px 120px,#ffe6a8,transparent),radial-gradient(1.6px 1.6px at 320px 70px,#fff,transparent),radial-gradient(1px 1px at 420px 150px,#fff,transparent);background-size:480px 190px;animation:twinkle 6s ease-in-out infinite alternate}
.featured-section .wrap,.guide-library .wrap{position:relative}
.eyebrow{color:#f0cf80}
.section-heading-row h2{color:var(--cream);text-shadow:0 2px 18px #000a,0 0 28px #d5ad5933}
.section-heading-mark{color:#f0cf80;text-shadow:0 0 18px #d5ad59;font-size:2.6rem}
.section-heading-row h2:after{content:'';display:block;width:170px;height:12px;margin-top:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 170 12'%3E%3Cpath d='M0 6H66M104 6H170' stroke='%23d5ad59' stroke-width='1.4'/%3E%3Cpath d='M85 0 92 6 85 12 78 6Z' fill='%23f0cf80'/%3E%3Ccircle cx='70' cy='6' r='2.2' fill='%23d5ad59'/%3E%3Ccircle cx='100' cy='6' r='2.2' fill='%23d5ad59'/%3E%3C/svg%3E") left/contain no-repeat}
.featured-guide{position:relative;min-height:330px;border:0;border-radius:6px;background:linear-gradient(135deg,#0f2a3d,#06121d);
 box-shadow:0 0 0 1px #e9c577,0 0 0 5px #06121d,0 0 0 7px #b98a35,0 30px 70px #000c,0 0 80px #d5ad5926}
.featured-guide:hover{transform:translateY(-6px);box-shadow:0 0 0 1px #f7de9c,0 0 0 5px #06121d,0 0 0 7px #e9c577,0 36px 80px #000d,0 0 110px #d5ad5955}
.featured-guide-art{background:#06121d;padding:0;min-height:330px}
.featured-guide-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.35) contrast(1.15) brightness(.74);transition:transform .8s,filter .5s}
.featured-guide:hover .featured-guide-art img{transform:scale(1.08);filter:saturate(1.45) contrast(1.15) brightness(.9)}
.featured-guide-art:after{background:radial-gradient(ellipse at 40% 35%,transparent 20%,#02080fcc 100%),linear-gradient(90deg,transparent 60%,#06121d 100%),linear-gradient(0deg,#02101fb8,transparent 55%)}
.featured-guide-art:before{content:'';position:absolute;z-index:2;inset:14px;border:1px solid #e9c577aa;border-radius:3px;pointer-events:none;box-shadow:inset 0 0 0 4px #02080f66,inset 0 0 30px #000a}
.featured-ribbon{z-index:3;left:-6px;top:30px;padding:8px 18px 8px 24px;clip-path:polygon(0 0,100% 0,calc(100% - 10px) 50%,100% 100%,0 100%);box-shadow:0 6px 14px #0008;background:var(--gilt)}
.featured-guide-copy{position:relative;color:#dbe6ee}
.featured-guide-copy h3{color:var(--cream);text-shadow:0 2px 14px #000a}
.featured-guide-copy p{color:#b9c9d4}
.small-eyebrow{color:#f0cf80;letter-spacing:2px}

/* ---------- Guide library: dark candlelit shelf of cards ---------- */
.guide-library{position:relative;overflow:hidden;padding:66px 24px 80px;background:radial-gradient(ellipse 50% 40% at 85% 0%,#d5ad5914,transparent 70%),radial-gradient(ellipse 60% 60% at 10% 100%,#12384d,transparent 70%),linear-gradient(#071522,#050d17)}
.library-intro{color:#aebfcb}
.guide-card{position:relative;border:1px solid #b98a35;border-radius:4px;background:linear-gradient(160deg,#10293b,#07131e);box-shadow:0 18px 40px #000a,inset 0 0 0 1px #f7de9c1a;color:#dbe6ee}
.guide-card:before,.guide-card:after{content:'';position:absolute;width:26px;height:26px;z-index:3;pointer-events:none;border:2px solid #f0cf80;transition:.3s}
.guide-card:before{left:6px;top:6px;border-right:0;border-bottom:0}
.guide-card:after{right:6px;bottom:6px;border-left:0;border-top:0}
.guide-card:hover{transform:translateY(-8px);border-color:#f0cf80;box-shadow:0 28px 54px #000c,0 0 44px #d5ad5940,inset 0 0 0 1px #f7de9c40}
.guide-card:hover:before,.guide-card:hover:after{width:40px;height:40px;filter:drop-shadow(0 0 6px #f0cf80)}
.guide-card-art{position:relative;display:block;height:200px;background:#06121d;border-bottom:3px solid #d5ad59;box-shadow:0 6px 18px #0008}
.guide-card-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.35) contrast(1.15) brightness(.72);transition:transform .7s,filter .4s}
.guide-card:hover .guide-card-art img{transform:scale(1.12);filter:saturate(1.5) contrast(1.15) brightness(.92)}
.guide-card-art:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 40%,transparent 30%,#02080fc0 100%),linear-gradient(transparent 50%,#07131ee0)}
.guide-card-art:before{content:'';position:absolute;z-index:2;right:12px;top:10px;width:54px;height:54px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cdefs%3E%3CradialGradient id='g'%3E%3Cstop offset='0' stop-color='%23fff6d0'/%3E%3Cstop offset='.25' stop-color='%23ffd98a' stop-opacity='.8'/%3E%3Cstop offset='1' stop-color='%23ffd98a' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='100' cy='100' r='60' fill='url%28%23g%29'/%3E%3Cpath d='M114.0 100.0L196.0 100.0M113.8 102.4L163.0 111.1M113.2 104.8L190.2 132.8M112.1 107.0L155.4 132.0M110.7 109.0L173.5 161.7M109.0 110.7L141.1 149.0M107.0 112.1L148.0 183.1M104.8 113.2L121.9 160.1M102.4 113.8L116.7 194.5M100.0 114.0L100.0 164.0M97.6 113.8L83.3 194.5M95.2 113.2L78.1 160.1M93.0 112.1L52.0 183.1M91.0 110.7L58.9 149.0M89.3 109.0L26.5 161.7M87.9 107.0L44.6 132.0M86.8 104.8L9.8 132.8M86.2 102.4L37.0 111.1M86.0 100.0L4.0 100.0M86.2 97.6L37.0 88.9M86.8 95.2L9.8 67.2M87.9 93.0L44.6 68.0M89.3 91.0L26.5 38.3M91.0 89.3L58.9 51.0M93.0 87.9L52.0 16.9M95.2 86.8L78.1 39.9M97.6 86.2L83.3 5.5M100.0 86.0L100.0 36.0M102.4 86.2L116.7 5.5M104.8 86.8L121.9 39.9M107.0 87.9L148.0 16.9M109.0 89.3L141.1 51.0M110.7 91.0L173.5 38.3M112.1 93.0L155.4 68.0M113.2 95.2L190.2 67.2M113.8 97.6L163.0 88.9' stroke='%23f1cf80' stroke-width='1.2' opacity='.9'/%3E%3Ccircle cx='100' cy='100' r='9' fill='%23fff8dc'/%3E%3C/svg%3E") center/contain no-repeat;opacity:.8;filter:drop-shadow(0 0 8px #ffd98a);animation:burst 4.5s ease-in-out infinite alternate}
.guide-card-copy{position:relative;z-index:2;color:#dbe6ee}
.guide-card-copy h3{color:var(--cream);text-shadow:0 2px 10px #0008}
.guide-card-copy p{color:#a9bac6}
.guide-card-copy .card-cta{color:#f0cf80;text-shadow:0 0 12px #d5ad5966;transition:letter-spacing .3s}
.guide-card:hover .card-cta{letter-spacing:.6px}
.badge{box-shadow:0 0 14px #d5ad5955}
.editor-note{position:relative;margin-top:44px;padding:22px 26px;color:#3a2c14;border:0;font-size:.92rem;
 background:radial-gradient(ellipse at 20% 10%,#fff6dc,transparent 60%),linear-gradient(135deg,#f1e2bb,#dcc592);
 clip-path:polygon(0 4%,2% 0,6% 3%,11% 0,17% 3%,24% 0,31% 3%,40% 0,48% 3%,57% 0,66% 3%,75% 0,84% 3%,92% 0,97% 3%,100% 1%,99% 40%,100% 72%,98% 100%,92% 96%,84% 100%,74% 97%,63% 100%,52% 96%,41% 100%,30% 97%,19% 100%,9% 96%,2% 100%,0 70%,1% 38%);
 box-shadow:inset 0 0 40px #8a5d1c55}
.editor-note code{background:#fff6dc;color:#5a3b0a}
.back-home a{color:#f0cf80;text-shadow:0 0 12px #d5ad5944}

/* ---------- Article pages (content/*.html): same drama ---------- */
.page-head{background-color:#050d17;border-bottom:0;padding:84px 24px 110px}
.page-head:before{background:radial-gradient(ellipse at 80% 30%,transparent 10%,#02080fa0 80%),linear-gradient(90deg,#030a12f2,#06182899 60%,#0a192540)}
.page-head h1{background:linear-gradient(#fff8e2,#f3d58f 60%,#d8a94d);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 20px #000c)}
.page-head .eyebrow{text-shadow:0 0 14px #d5ad5966}
main:has(.article){background:radial-gradient(ellipse 70% 40% at 50% 0%,#12384d,transparent 70%),linear-gradient(#050d17,#071522);padding-bottom:30px}
main:has(.article) .page-head:after{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 44' preserveAspectRatio='none'%3E%3Cpath d='M0 26Q150 0 300 22T600 22T900 22T1200 18V44H0Z' fill='%23050d17'/%3E%3C/svg%3E") bottom/100% 100% no-repeat;height:50px}
main:has(.article) .page-head{border-bottom:2px solid #b98a35;box-shadow:0 10px 40px #d5ad5922}
main:has(.article) section{background:transparent}
.article{position:relative;margin-top:-30px;border:0;border-radius:4px;color:#2a2418;
 background:radial-gradient(ellipse at 15% 0%,#fffaf0,transparent 55%),linear-gradient(135deg,#f6ecd2,#e6d4a8);
 box-shadow:0 0 0 1px #e9c577,0 0 0 5px #06121d,0 0 0 7px #b98a35,0 30px 70px #000d,0 0 90px #d5ad5922,inset 0 0 60px #8a5d1c33}
.article:before,.article:after{content:'✦';position:absolute;font-size:22px;line-height:1;color:#a8741f;opacity:.8}
.article:before{left:14px;top:12px}.article:after{right:14px;bottom:12px}
.article h2{color:#14283a}
.article a{color:#7a4f10}
.article .notice{background:#f9ecc4;border-left:4px solid #b98a35}

/* ---------- Responsive ---------- */
@media(max-width:760px){
 .category-hero{padding-top:44px;padding-bottom:96px}
 .category-hero-art{height:380px;width:min(100%,300px)}
 .category-hero-ornament{left:auto;right:8%;top:20px;width:120px;height:120px;opacity:.6}
 .featured-guide-art{min-height:240px}.featured-guide{min-height:0}
 .featured-guide-art:after{background:radial-gradient(ellipse at 40% 35%,transparent 20%,#02080fcc 100%),linear-gradient(0deg,#06121d,transparent 60%)}
}
@media(max-width:540px){.guide-card-art{height:215px}.section-heading-mark{font-size:2rem}}
@media (prefers-reduced-motion:reduce){.fx-rain,.fx-flash{display:none}}

/* ---------- Site search ---------- */
.search-btn{order:5;display:inline-flex;align-items:center;gap:8px;margin-left:4px;padding:8px 12px;background:linear-gradient(#0f2a3d,#07131e);border:1px solid #b98a35;border-radius:4px;color:#f0cf80;font:700 12px 'Open Sans',sans-serif;letter-spacing:.8px;text-transform:uppercase;cursor:pointer;transition:box-shadow .25s,border-color .25s}
.search-btn:hover{border-color:#f0cf80;box-shadow:0 0 18px #d5ad5955}
.search-btn svg,.search-field svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.search-btn kbd{font:600 11px 'Open Sans',sans-serif;border:1px solid #d5ad5977;border-radius:3px;padding:0 6px;color:#d9c48f;line-height:18px}
.search-btn:focus-visible,.search-close:focus-visible,.search-results a:focus-visible{outline:3px solid #f0cf80;outline-offset:2px}
body.search-open{overflow:hidden}
.search-overlay{position:fixed;inset:0;z-index:50;display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px;background:radial-gradient(ellipse at 50% 0%,#12384dd9,#02080ff0 70%);backdrop-filter:blur(6px);animation:fadeIn .2s}
.search-overlay[hidden]{display:none}
@keyframes fadeIn{from{opacity:0}}
.search-panel{width:min(640px,100%);max-height:76vh;display:flex;flex-direction:column;overflow:hidden;border-radius:6px;background:linear-gradient(160deg,#10293b,#07131e);box-shadow:0 0 0 1px #e9c577,0 0 0 5px #06121d,0 0 0 7px #b98a35,0 30px 80px #000,0 0 90px #d5ad5933;animation:rise .3s both}
.search-field{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #b98a3566;color:#f0cf80}
.search-field input{flex:1;min-width:0;border:0;background:transparent;color:#f6e8c6;font:600 18px 'Open Sans',sans-serif;padding:4px 0;outline:0;-webkit-appearance:none;appearance:none}
.search-field input::placeholder{color:#7f93a2;font-weight:400}
.search-field input::-webkit-search-cancel-button{display:none}
.search-close{background:transparent;border:1px solid #d5ad5977;border-radius:3px;color:#d9c48f;font:600 11px 'Open Sans',sans-serif;padding:3px 8px;cursor:pointer}
.search-results{list-style:none;margin:0;padding:8px;overflow:auto}
.search-results a{display:block;padding:12px 14px;border-radius:4px;border:1px solid transparent;text-decoration:none;color:#dbe6ee}
.search-results li[aria-selected=true] a,.search-results a:hover{background:#17435f88;border-color:#b98a35}
.search-results strong{display:block;font:700 16px 'Cinzel',Georgia,serif;color:#f6e8c6;margin:2px 0}
.search-results small{display:block;color:#9fb2c0;font-size:13px;line-height:1.5}
.sr-type{display:inline-block;font:800 10px 'Open Sans',sans-serif;letter-spacing:1.2px;text-transform:uppercase;color:#101b2b;background:linear-gradient(#e7c574,#c8993f);padding:2px 8px;border-radius:20px}
.search-results mark{background:#d5ad5933;color:#ffe3a0;border-radius:2px;padding:0 1px}
.search-hint,.search-empty{padding:26px 16px;text-align:center;color:#9fb2c0;font-size:14px}
.search-empty a{color:#f0cf80}
.search-foot{padding:9px 18px;border-top:1px solid #b98a3544;font-size:11px;letter-spacing:.5px;color:#7f93a2;text-align:right}
@media(max-width:900px){.search-btn{order:2;margin-left:auto}.menu-toggle{order:3}nav{order:4}.search-btn kbd{display:none}}
@media(max-width:560px){.search-overlay{padding-top:72px}.search-btn span{display:none}.search-foot{display:none}}

/* Clickable feature strip */
a.feature{display:block;color:inherit;text-decoration:none;cursor:pointer}
a.feature strong{transition:color .25s,text-shadow .25s}
a.feature:hover strong,a.feature:focus-visible strong{color:#f7de9c;text-shadow:0 0 14px #d5ad59aa}
a.feature:after{content:'';position:absolute;left:18%;right:18%;bottom:0;height:2px;background:linear-gradient(90deg,transparent,#f0cf80,transparent);transform:scaleX(0);transition:transform .3s}
a.feature:hover:after,a.feature:focus-visible:after{transform:scaleX(1)}
a.feature:focus-visible{outline:3px solid #f0cf80;outline-offset:-4px}
