/* SIM — Southern Independent Merchants | Responsive pirate alliance website
   No Flash or frameworks. Original user-approved ships and crest only.
   Brand colors: #07141c #c77a28 #f4c56e #ef8f25 #fff0cf.
*/
:root{color-scheme:dark;--ink:#061017;--navy:#07141c;--navy-2:#0d2029;--navy-3:#122b32;--gold:#f6c978;--gold-hi:#ffe2a1;--brass:#bb7934;--copper:#dc6427;--red:#8a2a19;--cream:#f9ecd0;--muted:#b9b7a8;--line:rgba(219,147,56,.55);--max:1480px;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--ink);color:var(--cream);font:16px/1.6 var(--sans);overflow-x:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}a:hover{color:var(--gold-hi)}img{max-width:100%;display:block}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--serif);line-height:1.12}h1,h2,h3{text-shadow:0 2px 2px rgba(0,0,0,.7)}button{cursor:pointer}::selection{background:var(--copper);color:white} :focus-visible{outline:3px solid var(--gold-hi);outline-offset:4px} .skip-link{position:absolute;top:-70px;left:1rem;background:var(--gold-hi);color:#000;padding:.5rem 1rem;z-index:200}.skip-link:focus{top:1rem}.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.small-caps{font:700 .69rem/1.4 var(--sans);letter-spacing:.33em;color:var(--gold);text-transform:uppercase}.gold{color:var(--gold)}.divider-ornament{height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);position:relative;margin:1.9rem auto;width:min(320px,80%)}.divider-ornament:after{content:'✦';background:var(--navy);padding:0 .9rem;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--gold)}
/* Top navigation */
.site-header{position:relative;z-index:50;min-height:77px;background:linear-gradient(180deg,rgba(19,13,12,.98),rgba(6,15,20,.98)),repeating-linear-gradient(95deg,transparent 0 80px,#32211d 81px 84px);border-bottom:1px solid var(--brass);box-shadow:0 3px 18px rgba(0,0,0,.62)}.header-inner{max-width:1600px;min-height:77px;padding:0 30px;margin:auto;display:flex;align-items:center;justify-content:flex-end;gap:1.15rem}.header-brand{position:absolute;z-index:60;top:6px;left:max(28px,calc((100vw - 1600px)/2 + 37px));width:clamp(185px,20vw,300px);filter:drop-shadow(0 9px 8px #000)}.header-brand img{width:100%;height:auto}.site-nav{display:flex;align-items:center;gap:clamp(.5rem,1.9vw,2.4rem);margin-left:320px}.nav-link{font:700 .9rem var(--serif);letter-spacing:.03em;text-transform:uppercase;position:relative;padding:.75rem .25rem;white-space:nowrap;transition:color .2s}.nav-link.active,.nav-link:hover{color:var(--gold)}.nav-link.active:after{content:'';position:absolute;left:0;right:0;bottom:5px;height:2px;background:var(--gold);box-shadow:0 0 10px var(--gold)}.nav-join{margin-left:.65rem}.mobile-toggle{display:none;background:transparent;color:var(--gold);border:1px solid var(--line);border-radius:3px;width:46px;height:44px;font-size:1.6rem;line-height:1}.nav-menu{display:contents}
/* Shared brass UI */
.btn{position:relative;isolation:isolate;display:inline-flex;gap:.85rem;align-items:center;justify-content:center;text-align:center;min-height:49px;padding:.8rem 1.75rem;font:700 .92rem/1.1 var(--serif);letter-spacing:.03em;text-transform:uppercase;border:1px solid #d9974c;border-radius:4px;box-shadow:inset 0 0 0 2px rgba(25,10,3,.45),0 4px 0 rgba(28,11,5,.95),0 8px 18px #0006;overflow:hidden;transition:transform .2s,filter .2s}.btn:hover{transform:translateY(-2px);filter:brightness(1.13);color:inherit}.btn:active{transform:translateY(1px)}.btn-primary{color:#1c1108;background:linear-gradient(160deg,#ffe6a0 0%,#eaa646 42%,#b96621 100%);text-shadow:0 1px #ffdda0}.btn-ember{color:var(--cream);background:linear-gradient(160deg,#e8742d,#8c260f);text-shadow:0 1px #341309}.btn-ghost{background:#081923db;color:var(--gold);border-color:#aa7939}.btn-sm{font-size:.81rem;min-height:43px;padding:.65rem 1.35rem}.text-link{font:700 .83rem var(--serif);text-transform:uppercase;letter-spacing:.06em;color:var(--gold);border-bottom:1px solid transparent}.text-link:hover{border-color:var(--gold)}.frame{background:linear-gradient(135deg,rgba(234,172,83,.16),transparent 26%,transparent 74%,rgba(234,172,83,.16)),linear-gradient(180deg,#0a1d26,#06131b);border:1px solid var(--brass);box-shadow:inset 0 0 0 3px #0b1b22,inset 0 0 0 4px #6d4b23,0 12px 30px rgba(0,0,0,.35);border-radius:4px}.eyebrow{font:700 .7rem var(--sans);text-transform:uppercase;letter-spacing:.27em;color:var(--gold)}.heading{font-size:clamp(2.15rem,4vw,3.75rem);text-transform:uppercase;color:var(--gold-hi)}.section-head{text-align:center;margin-bottom:2.4rem}.section-head p{max-width:730px;margin:.9rem auto 0;color:var(--muted)}
/* Exact original ship art is cropped out of the approved screenshot, without replacement. */
.hero{position:relative;isolation:isolate;min-height:475px;background:radial-gradient(ellipse at 65% 75%,#763a23 0%,#111e29 50%,#06121a 80%);overflow:hidden;border-bottom:1px solid #7d492b}.hero-art{position:absolute;z-index:-3;inset:0 0 0 30%;background-image:url('../images/hero-original-ships.webp');background-position:center center;background-repeat:no-repeat;background-size:cover}.hero:before{content:'';position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#06111bdc 0%,#081824d9 19%,#071722a8 33%,#07151a24 51%,transparent 72%),linear-gradient(0deg,rgba(2,12,17,.58),transparent 25%,transparent 80%,rgba(0,0,0,.13))}.hero-content{padding-top:165px;padding-bottom:40px;max-width:1600px;margin:0 auto;padding-left:clamp(32px,5vw,78px);padding-right:32px;position:relative;z-index:6}.hero h1{font-size:clamp(2.6rem,4.25vw,4.8rem);line-height:.97;color:#fff0cf;text-transform:uppercase;letter-spacing:-.03em;margin:0 0 .6rem;max-width:720px;text-shadow:0 4px 2px #000,0 0 14px #0008}.hero h1 span{color:var(--gold);display:block}.hero-desc{font:1rem/1.5 var(--serif);max-width:440px;text-shadow:0 2px 5px #000;margin:.75rem 0 1rem}.hero .btn{min-width:285px;font-size:1.12rem}.hero-birds{position:absolute;z-index:4;inset:0;pointer-events:none}.bird{position:absolute;color:rgba(18,22,22,.76);font-size:22px;text-shadow:0 1px 3px #ffe5ab;animation:birdfloat 15s linear infinite}.bird svg{width:32px;height:17px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;animation:flap 1.8s ease-in-out infinite;transform-origin:center}.bird.a{left:57%;top:15%;animation-duration:17s}.bird.b{left:76%;top:13%;animation-duration:22s;animation-delay:-5s;transform:scale(.7)}.bird.c{left:91%;top:19%;animation-duration:19s;animation-delay:-9s;transform:scale(.8)}
/* Natural animated sunflecks: irregular, tiny warm highlights, drawn on a transparent canvas.
   No artificial repeating stripes, diagonal sweeps or blanket white overlays. */
.sea-sheen{position:absolute;z-index:2;bottom:0;left:0;width:100%;height:33%;pointer-events:none;opacity:.82;mask-image:linear-gradient(to bottom,transparent,rgba(0,0,0,.6) 25%,black 58%)}
.hero-particle{position:absolute;z-index:3;border-radius:50%;background:var(--gold-hi);width:3px;height:3px;opacity:0;pointer-events:none;box-shadow:0 0 5px 2px #ffd477aa;animation:sparkle 6s ease-in-out infinite}.hero-particle.p1{top:72%;left:75%;animation-delay:1.3s}.hero-particle.p2{top:85%;left:53%;animation-delay:3s}.hero-particle.p3{top:79%;left:92%;animation-delay:4.5s}
/* Approved four tile structure */
.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;position:relative;z-index:10;margin-top:-4px}.feature-card{overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s}.feature-card:hover{transform:translateY(-5px);box-shadow:0 12px 35px #0009,0 0 24px #b376342d}.feature-card>a{display:block;height:100%}.feature-image{height:120px;overflow:hidden;position:relative}.feature-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b1b25ad,transparent 70%)}.feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.feature-card:hover img{transform:scale(1.05)}.feature-icon{position:relative;z-index:2;margin:-25px auto 0;border:2px solid #b77c38;border-radius:100%;width:58px;height:58px;display:grid;place-items:center;background:radial-gradient(circle,#17313a,#07141c);font-size:1.6rem;box-shadow:0 2px 12px #000}.feature-body{text-align:center;padding:8px 19px 22px}.feature-body h2{font-size:1.55rem;color:var(--gold-hi);margin:0 0 .55rem;font-variant:small-caps}.feature-body p{font: .94rem/1.42 var(--serif);color:#e0d9c9;min-height:65px;margin:0 0 .55rem}.feature-cta{font:700 .77rem var(--serif);letter-spacing:.03em;color:var(--gold);text-transform:uppercase;text-decoration:underline;text-underline-offset:5px}
/* Sections */
.section{padding:88px 0}.section.dark-section{background:radial-gradient(ellipse at top,#143341,#07131c 66%)}.section.wood-section{background:linear-gradient(0deg,#0b151bfa,#0c1b23f4),repeating-linear-gradient(5deg,#31231d 0 4px,#171317 8px 31px)}.cards-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.info-card{padding:30px 27px}.info-card .icon-large{font-size:2.3rem;color:var(--gold)}.info-card h3{font-size:1.55rem;color:var(--gold-hi);margin:15px 0 12px}.info-card p{color:#c7c4b6}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,5vw,86px);align-items:center}.two-col>div>p{color:var(--muted)}.art-frame{padding:7px;border:1px solid var(--line);background:#07131a}.art-frame img{width:100%;height:auto}.banner-bar{position:relative;background:url('../images/footer-original-scene.webp') center 52%/cover;min-height:105px;display:flex;align-items:center;justify-content:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;padding:22px}.banner-bar:before{content:'';inset:0;position:absolute;background:#08121a9e}.banner-bar span{position:relative;font:700 clamp(.75rem,1.3vw,1.1rem) var(--serif);color:var(--gold);letter-spacing:.34em;text-shadow:0 3px 5px #000;text-transform:uppercase}
/* Secondary page headers and content */
.page-hero{min-height:345px;position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden;background:#0b1e29;border-bottom:1px solid var(--line)}.page-hero:before{position:absolute;z-index:-2;content:'';inset:0;background:url('../images/hero-original-ships.webp') center 52%/cover}.page-hero:after{position:absolute;z-index:-1;content:'';inset:0;background:linear-gradient(90deg,#07131df2 0%,#07131ddf 27%,#07131d80 65%,#07131d55),linear-gradient(0deg,#07131cbb,transparent)}.page-hero-inner{padding:95px 0 55px}.page-hero h1{max-width:850px;font-size:clamp(2.6rem,5vw,5rem);margin:.35rem 0 1rem;color:var(--gold-hi)}.page-hero p{font:1.1rem/1.6 var(--serif);max-width:690px}.page-hero .eyebrow{display:block}.page-content{min-height:55vh}.lead{font:1.18rem/1.8 var(--serif);color:#e8dfc9}.breadcrumbs{font:.75rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:15px}.breadcrumbs a{color:var(--gold)}.stat-band{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px}.stat-band>div{padding:20px;border-top:1px solid var(--line);text-align:center}.stat-band strong{font:700 1.35rem var(--serif);color:var(--gold);display:block}.stat-band small{color:#bfb7a6;text-transform:uppercase;letter-spacing:.12em}.page-contents-list{padding:0;list-style:none}.page-contents-list li{border-bottom:1px solid #aa814c55;padding:12px 0}.page-contents-list li:before{content:'✦';color:var(--brass);margin-right:13px}.fleet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ship-card{overflow:hidden}.ship-card .ship-image{height:260px;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#173a44,#031b20 78%);cursor:zoom-in;position:relative}.ship-card .ship-image img{width:100%;height:100%;object-fit:contain;transition:transform .3s}.ship-card .ship-image:hover img{transform:scale(1.04)}.ship-card .ship-image:after{content:'Click to enlarge';position:absolute;bottom:10px;right:14px;color:#d4c7a6;font: .72rem var(--sans);opacity:.75}.ship-details{padding:24px}.ship-details h3{font-size:1.6rem;color:var(--gold-hi)}.ship-details p{color:var(--muted)}.thumbs{display:flex;gap:8px;margin-top:15px}.thumbs button{width:68px;height:57px;padding:2px;background:#0a2530;border:1px solid #98703c;transition:border-color .2s}.thumbs button:hover{border-color:var(--gold-hi)}.thumbs img{width:100%;height:100%;object-fit:contain}.notice{padding:18px 24px;background:rgba(197,123,43,.1);border-left:3px solid var(--gold);color:#e7d5b4;border-radius:2px}.event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.event-row{padding:28px;display:flex;gap:22px}.event-mark{font:700 2rem var(--serif);color:var(--gold);min-width:52px;text-align:center}.event-row h3{color:var(--gold-hi);font-size:1.45rem}.event-row p{color:var(--muted)}.chip{display:inline-block;border:1px solid var(--line);background:#101e25;border-radius:2px;color:#d9c499;padding:.25rem .65rem;font:.68rem var(--sans);text-transform:uppercase;letter-spacing:.08em}.roster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.captain-card{padding:32px;text-align:center}.captain-silhouette{width:100px;height:100px;display:grid;place-items:center;border:2px solid #8f6237;border-radius:50%;margin:0 auto 20px;background:radial-gradient(circle,#1e4045,#071b23);font:2.5rem var(--serif);color:var(--gold)}.captain-card h3{color:var(--gold-hi)}.captain-card p{color:var(--muted)}.faq-list details{border-bottom:1px solid var(--line);padding:16px 0}.faq-list summary{cursor:pointer;color:var(--gold-hi);font:700 1.1rem var(--serif)}.faq-list details p{padding:14px 0 0;color:var(--muted)}.news-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.news-entry{padding:25px}.news-entry h3{color:var(--gold-hi);font-size:1.5rem}.news-entry p{color:var(--muted)}.post-meta{font:.72rem var(--sans);color:var(--gold);letter-spacing:.14em;text-transform:uppercase}.empty-state{padding:42px;text-align:center;grid-column:1/-1;color:#b8b4a7}.empty-state h3{color:var(--gold)}
/* Functional recruitment form: copyable application, no bogus backend */
.join-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;align-items:start}.apply-form{padding:32px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px}.field label{font:700 .77rem var(--sans);letter-spacing:.08em;color:var(--gold);text-transform:uppercase}.field input,.field textarea,.field select{background:#091a22;border:1px solid #947047;border-radius:3px;color:#f5e6cc;padding:13px 14px;width:100%;min-height:45px}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--gold)}.field textarea{min-height:140px;resize:vertical}.field option{background:#091a22}.form-note{font:.82rem var(--sans);color:#a9ab9e}.success-output{padding:20px;margin-top:20px;background:#0d2930;border:1px solid var(--gold);white-space:pre-line}.success-output[hidden]{display:none}.copy-result{margin-top:12px}.form-error{color:#ffbc8a;min-height:1.3em}
/* Footer / modal / mobile + animation control */
.footer{background:linear-gradient(#07131c,#03090d);padding:45px 0 22px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px;align-items:start}.footer-logo{width:120px;filter:drop-shadow(0 4px 5px #000);margin-bottom:8px}.footer h4{color:var(--gold);font-size:1.04rem;text-transform:uppercase}.footer a{color:#d2c9b9;display:block;margin-bottom:6px}.footer a:hover{color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #75522b66;padding-top:15px;margin-top:25px;color:#999b92;font-size:.78rem}.motion-toggle{position:fixed;bottom:16px;left:16px;z-index:80;padding:8px 13px;color:#f4d69e;border:1px solid #b7823b;background:#071921e8;border-radius:25px;font-size:.72rem;box-shadow:0 3px 12px #0008}.toast{position:fixed;z-index:200;bottom:20px;left:50%;transform:translate(-50%,30px);width:min(480px,calc(100vw - 30px));background:#12313a;border:1px solid var(--gold);padding:17px 20px;border-radius:4px;box-shadow:0 20px 40px #000a;color:var(--cream);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}.toast.open{opacity:1;transform:translate(-50%,0)}.lightbox{border:1px solid var(--gold);max-width:min(900px,94vw);width:900px;background:#03171e;color:var(--cream);padding:18px;box-shadow:0 0 80px #000}.lightbox::backdrop{background:#000e}.lightbox .lightbox-image{max-height:74vh;width:100%;object-fit:contain}.lightbox-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px}.lightbox-actions button{background:#15303a;color:var(--gold-hi);border:1px solid var(--line);padding:8px 15px}.lightbox-caption{font: .9rem var(--serif);color:var(--gold)}
@keyframes birdfloat{0%{translate:-24px 0}25%{translate:22px -9px}50%{translate:48px 3px}75%{translate:25px 9px}100%{translate:-24px 0}}@keyframes flap{0%,100%{transform:scaleY(.8)}50%{transform:scaleY(1.2)}}@keyframes sparkle{0%,75%,100%{opacity:0;transform:scale(.5)}81%{opacity:.95;transform:scale(2.2)}87%{opacity:0;transform:scale(.9)}}
/* User preference and accessibility: freeze decorative animation but keep all functionality. */
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition:none!important;scroll-behavior:auto!important}}html.motion-off *,html.motion-off *:before,html.motion-off *:after{animation-play-state:paused!important;transition:none!important}
@media(max-width:1200px){.header-brand{width:205px;left:22px}.site-nav{margin-left:210px;gap:.8rem}.nav-link{font-size:.82rem}.hero h1{font-size:3.55rem}.feature-body h2{font-size:1.3rem}.feature-body p{font-size:.85rem}}
@media(max-width:900px){.site-header,.header-inner{min-height:69px}.header-inner{padding:0 16px}.header-brand{width:146px;top:3px;left:16px}.mobile-toggle{display:block}.site-nav{margin-left:auto}.nav-menu{display:none;position:absolute;top:69px;left:0;right:0;max-height:calc(100vh - 69px);overflow-y:auto;background:#071821;border-bottom:2px solid var(--brass);padding:22px 20px;box-shadow:0 13px 25px #000a}.nav-menu.open{display:flex;flex-direction:column;gap:2px;align-items:stretch}.nav-link{font-size:1.04rem;padding:14px 15px}.nav-link.active:after{bottom:7px;left:15px;right:auto;width:75px}.nav-join{margin:12px 0 0}.hero{min-height:580px}.hero-art{left:10%;background-position:59% top;opacity:.9}.hero:before{background:linear-gradient(90deg,#071621df,rgba(7,22,31,.7) 36%,rgba(7,22,31,.18)),linear-gradient(0deg,#06121c 0%,transparent 60%)}.hero-content{padding-top:180px}.hero h1{font-size:clamp(2.75rem,7vw,4.2rem)}.feature-grid{grid-template-columns:repeat(2,1fr)}.cards-3,.roster-grid{grid-template-columns:repeat(2,1fr)}.fleet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.join-layout,.two-col{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.page-hero-inner{padding:115px 0 50px}}
@media(max-width:560px){.container{width:calc(100% - 28px)}.header-brand{width:119px;left:6px}.hero{min-height:565px}.hero-art{left:0%;background-size:auto 100%;background-position:47% top;opacity:.78}.hero:before{background:linear-gradient(90deg,#06141fdb,rgba(6,20,31,.7)),linear-gradient(0deg,#06131ee0 0%,transparent 58%)}.hero-content{padding:178px 19px 40px}.hero h1{font-size:clamp(2.55rem,10vw,3.7rem);line-height:1.01}.hero-desc{font-size:.95rem;max-width:350px}.hero .btn{width:100%;min-width:0}.feature-grid{grid-template-columns:1fr;gap:14px}.feature-image{height:150px}.feature-body p{min-height:0}.section{padding:60px 0}.section-head{margin-bottom:25px}.cards-3,.roster-grid,.fleet-grid,.event-grid,.news-list{grid-template-columns:1fr}.ship-card .ship-image{height:270px}.event-row{padding:19px}.form-grid{grid-template-columns:1fr;gap:0}.apply-form{padding:20px}.footer-grid{grid-template-columns:1fr;gap:14px}.footer-bottom{flex-direction:column;gap:5px}.page-hero{min-height:350px}.page-hero h1{font-size:2.6rem}.page-hero-inner{padding:135px 0 45px}.stat-band{grid-template-columns:1fr;gap:0}.stat-band>div{padding:13px}.banner-bar span{letter-spacing:.12em}.motion-toggle{bottom:10px;left:10px;opacity:.85}.section h2.heading{font-size:2.2rem}}
/* Warm atmospheric glow, without repeated white glints or streaks. */

.hero:after{content:'';position:absolute;z-index:1;right:-90px;top:-95px;width:360px;height:300px;background:radial-gradient(ellipse,rgba(255,165,52,.16),transparent 69%);pointer-events:none;animation:lanternflare 5.5s ease-in-out infinite alternate}


@keyframes lanternflare{from{opacity:.35;transform:scale(.98)}to{opacity:1;transform:scale(1.08)}}
/* Keep page lettering clear of the overhanging approved alliance crest on large displays. */
@media(min-width:901px){.hero-content{padding-top:190px;padding-bottom:15px}.page-hero-inner{padding-top:185px;padding-bottom:45px}}

/* Compact four-page alliance edition. Shared styling keeps every navigation consistent. */
.home-explore{padding-bottom:36px}
.feature-grid--three{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.feature-grid--three .feature-image{height:150px}
.feature-grid--three .feature-body p{min-height:0;margin-bottom:1rem}
.nav-join{margin-left:.8rem}
/* Soft occasional shimmer on the gold/orange buttons, not on the text links. */
.btn-glint:after{content:'';position:absolute;z-index:2;pointer-events:none;inset:-90% auto -90% -75%;width:29%;background:linear-gradient(100deg,transparent,rgba(255,247,203,.3),transparent);transform:skewX(-19deg);animation:button-glint 9s ease-in-out infinite}
@keyframes button-glint{0%,69%,100%{left:-75%}79%{left:130%}}
.simple-cta{display:flex;align-items:center;justify-content:space-between;gap:32px}
.simple-cta h2{margin:.4rem 0 .45rem}
.simple-cta p{margin-bottom:0;color:var(--muted)}
.home-last{padding:55px 0 65px}
.footer-grid--compact{grid-template-columns:1.5fr 1fr 1fr}
.story-copy p{font:1.07rem/1.8 var(--serif);color:#d2cdc2;margin-bottom:1.4rem}
.story-copy p strong{color:var(--gold);font-weight:700}
.story-art img{width:100%;min-height:280px;object-fit:cover}
.rules-wrap{max-width:1020px;display:grid;gap:24px}
.rules-panel{padding:30px 38px}
.rules-title{display:flex;align-items:center;gap:17px;margin-bottom:13px}
.rules-title>span{color:var(--gold);font-size:2rem}
.rules-title h2{font-size:clamp(1.7rem,3vw,2.15rem);color:var(--gold-hi);margin:0}
.rules-list{list-style:none;padding:0;margin:0}
.rules-list li{padding:15px 0 15px 27px;border-top:1px solid rgba(187,121,52,.28);position:relative;color:#d1c9ba;line-height:1.65}
.rules-list li:before{content:'✦';position:absolute;left:0;color:var(--brass)}
.rules-list strong{color:var(--gold-hi)}
.rules-cta{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:12px 4px 0}
.rules-cta p{margin:0;color:var(--muted)}
.gallery-section .divider-ornament{margin:3.5rem auto}
.media-grid{display:grid;gap:20px}
.media-grid--videos{grid-template-columns:repeat(2,minmax(0,1fr))}
.media-grid--screenshots{grid-template-columns:repeat(2,minmax(0,1fr))}
.media-card{padding:8px;overflow:hidden}
.media-placeholder{height:auto;aspect-ratio:16/9;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#d7c29d;background:radial-gradient(ellipse at 50% 35%,#203e46,#0b222c 56%,#07141b);border:1px dashed #916c3e;text-align:center;padding:25px}
.media-symbol{width:66px;height:66px;display:grid;place-items:center;border:2px solid #966e3b;border-radius:50%;font-size:1.7rem;color:var(--gold);margin-bottom:5px}
.media-placeholder strong{font:700 1.35rem var(--serif);color:var(--gold-hi)}
.media-placeholder small{font:.85rem var(--sans);color:var(--muted)}
.media-card-label{color:var(--gold);font:.75rem var(--serif);letter-spacing:.11em;text-transform:uppercase;margin:12px 8px 8px}
.gallery-video,.gallery-image-button{width:100%;aspect-ratio:16/9;display:block;background:#081b23;border:0;padding:0}
.gallery-video{object-fit:contain}
.gallery-image-button{cursor:zoom-in;overflow:hidden}
.gallery-image-button img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.gallery-image-button:hover img{transform:scale(1.03)}
.gallery-recruit{padding:65px 0}
@media(max-width:900px){.feature-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid--compact{grid-template-columns:1fr 1fr}.simple-cta{align-items:flex-start}}
@media(max-width:560px){.feature-grid--three{grid-template-columns:1fr}.media-grid--videos,.media-grid--screenshots{grid-template-columns:1fr}.media-placeholder{min-height:160px}.simple-cta,.rules-cta{flex-direction:column;align-items:flex-start}.rules-panel{padding:23px 20px}.rules-title{gap:12px}.rules-list li{padding-left:23px}.story-art img{min-height:180px}.footer-grid--compact{grid-template-columns:1fr}.gallery-recruit{padding:52px 0}}

/* Recruitment is a short landing page, not an application form. */
.join-page{min-height:0;padding:55px 0 75px}
.join-guide{max-width:1040px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch}
.join-step{min-width:0;display:flex;align-items:flex-start;gap:19px;padding:30px 30px 32px}
.join-number{flex:0 0 auto;font:700 2.45rem/1 var(--serif);color:var(--gold);text-shadow:0 2px 3px #0007}
.join-step-body{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:0}
.join-step h2{font-size:clamp(1.5rem,2.3vw,2rem);color:var(--gold-hi);margin:0 0 12px}
.join-step p{color:#d6cbb8;line-height:1.7;margin:0 0 21px}
.join-step strong{color:var(--gold-hi)}
.join-step .join-example{font:italic .9rem/1.55 var(--serif);color:var(--muted);border-left:2px solid var(--brass);padding-left:12px;margin-top:-6px}
.join-step .btn{margin-top:auto;max-width:100%}
.join-endnote{grid-column:1/-1;text-align:center;color:var(--muted);margin:7px 0 0;font:.94rem/1.6 var(--sans)}
@media(max-width:790px){.join-guide{grid-template-columns:1fr;max-width:650px}.join-step{padding:26px}.join-page{padding:38px 0 56px}}
@media(max-width:420px){.join-step{gap:13px;padding:22px 18px}.join-number{font-size:2rem}.join-step .btn{width:100%;padding-left:.7rem;padding-right:.7rem;font-size:.79rem}}

/* Smooth same-origin navigation (progressive enhancement; normal links remain functional). */
@view-transition { navigation: auto; }
::view-transition-old(root) { animation-duration: 110ms; }
::view-transition-new(root) { animation-duration: 150ms; }
