@import url('https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@700;800&family=Instrument+Serif:ital@0;1&family=Jost:wght@500&family=Manrope:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap');
:root{--font-display:"Big Shoulders Display",Impact,"Arial Narrow",sans-serif!important;--font-brand:"Big Shoulders Display",Impact,"Arial Narrow",sans-serif!important;--font-caps:"Big Shoulders Display",Impact,"Arial Narrow",sans-serif!important;--font-serif:"Instrument Serif",Georgia,serif!important;--font-sans:Manrope,"Helvetica Neue",Arial,sans-serif!important;--font-mono:"IBM Plex Mono",Menlo,monospace!important}
body{font-family:var(--font-sans)}
h1,h2,.h1,.h2{font-family:var(--font-display)!important;font-weight:800!important;text-transform:uppercase;line-height:.92!important;letter-spacing:.005em!important}
h3,.h3{font-family:var(--font-display)!important;font-weight:700!important;text-transform:uppercase;line-height:.95;letter-spacing:.01em}
h1 i,h2 i,h3 i,h1 em,h2 em,h3 em,.h1 i,.h2 i{font-family:var(--font-serif)!important;font-style:italic;font-weight:400!important;text-transform:none;letter-spacing:-.01em;font-size:.9em}

.js .mc-rv{opacity:.3;transform:translateY(22px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}.js .mc-rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.js .mc-rv{opacity:1;transform:none;transition:none}}
.mc-cur{position:fixed;left:0;top:0;pointer-events:none;z-index:9999;background:#0F1A17;color:#F5F3EE;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;padding:12px 16px;border-radius:999px;transform:translate(-50%,-50%) scale(0);transition:transform .25s ease}.mc-cur.on{transform:translate(-50%,-50%) scale(1)}
body>header:first-of-type,header.nav,header.site,.nav{transition:transform .4s ease}.mc-hide{transform:translateY(-100%)!important}
.mc-by{display:flex;align-items:center;justify-content:center;gap:12px;padding:22px 16px;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;opacity:.85;text-decoration:none;color:inherit;border-top:1px solid rgba(128,128,128,.25)}
.mc-by b{display:inline-flex;flex-direction:column;gap:3px;font-family:"Big Shoulders Display",Impact,sans-serif;font-weight:800;font-size:22px;letter-spacing:.01em;line-height:.9;text-transform:uppercase;white-space:nowrap}.mc-by b em{font-family:Jost,Manrope,sans-serif;font-style:normal;font-weight:500;font-size:7px;letter-spacing:.42em;line-height:1;opacity:.85}
img{transition:transform .8s ease}a:hover>img{transform:scale(1.02)}

/* Mica Creek accents */
.btn.brass,.btn.primary,.stick a.brass{background:var(--mc-accent,#D9552B)!important;color:var(--mc-on-accent,#F5F3EE)!important;border-color:var(--mc-accent,#D9552B)!important}
.btn.brass:hover,.btn.primary:hover,.stick a.brass:hover{background:var(--mc-accent-deep,#C24A24)!important;color:var(--mc-on-accent,#F5F3EE)!important;border-color:var(--mc-accent-deep,#C24A24)!important}
:is(.eyebrow,.navtag,.chip,.quiz .qn,.people .p small,.conc div span,.card .spec,.card .price span,.filters .lbl,.filters .count,.poi-list li span,.events .d small,.events .t,.info .box b,.urgent .live,.stats div span,footer h4,.crumbs,.postmeta){font-family:"IBM Plex Mono",Menlo,monospace!important;font-size:11px!important;letter-spacing:.16em!important;color:#0F1A17!important}
:is(.dark,.studio,.hero,footer,.banner,.menu,.lightbox,.collage .note,.ticker.garnet) :is(.eyebrow,.navtag,.chip,.quiz .qn,.people .p small,.conc div span,.card .spec,.card .price span,.filters .lbl,.filters .count,.poi-list li span,.events .d small,.events .t,.info .box b,.urgent .live,.stats div span,footer h4,.crumbs,.postmeta){color:#F5F3EE!important}
footer,footer a{color:#F5F3EE}
main p a:not(.btn):hover,.prose a:hover,.faq .a a:hover{text-decoration:underline;text-decoration-color:var(--mc-accent,#D9552B)}

/* Upgraded top menu bar: larger logo, condenses on scroll, animated links, scroll progress */
header.nav{transition:transform .4s ease,background-color .3s ease,box-shadow .3s ease,border-color .3s ease!important}
header.nav .wrap{height:112px!important;transition:height .35s cubic-bezier(.2,.7,.2,1)}
header.nav .lock img{height:88px!important;transition:height .35s cubic-bezier(.2,.7,.2,1)}
header.nav.mc-scrolled{background:color-mix(in srgb,var(--cream) 88%,transparent)!important;-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);box-shadow:0 10px 30px rgba(10,20,17,.10);border-bottom-color:rgba(15,26,23,.18)!important}
header.nav.mc-scrolled .wrap{height:76px!important}
header.nav.mc-scrolled .lock img{height:56px!important}
header.nav .lock::after{display:none}
header.nav .items a{position:relative;border-bottom:0!important;padding:10px 2px!important;transition:color .2s}
header.nav .items a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;border-radius:2px;background:var(--mc-accent,#D9552B);transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
header.nav .items a:hover{color:var(--moss)}
header.nav .items a:hover::after,header.nav .items a[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}
header.nav .items a[aria-current="page"]{font-weight:700}
header.nav .btn{transition:transform .2s,box-shadow .2s,background-color .2s}
header.nav .btn.brass:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(10,20,17,.18)}
header.nav .burger{transition:transform .2s}header.nav .burger:hover{transform:scale(1.05)}
.mc-prog{position:absolute;left:0;bottom:-2px;height:3px;width:100%;background:var(--sage);transform:scaleX(0);transform-origin:left;pointer-events:none}
@media (max-width:1400px){header.nav .lock img{height:76px!important}}
@media (max-width:1250px){header.nav .lock img{height:62px!important}header.nav.mc-scrolled .lock img{height:50px!important}}
@media (max-width:1100px){header.nav .wrap{height:88px!important}header.nav .lock img{height:62px!important}header.nav.mc-scrolled .wrap{height:68px!important}header.nav.mc-scrolled .lock img{height:46px!important}}
@media (max-width:900px) and (min-width:761px){header.nav .lock img{height:48px!important}header.nav.mc-scrolled .lock img{height:40px!important}}
@media (max-width:700px){header.nav .wrap{height:72px!important}header.nav .lock img{height:46px!important}header.nav.mc-scrolled .wrap{height:60px!important}header.nav.mc-scrolled .lock img{height:38px!important}}
@media (max-width:400px){header.nav .lock img{height:40px!important}header.nav.mc-scrolled .lock img{height:34px!important}}
@media (prefers-reduced-motion:reduce){header.nav,header.nav .wrap,header.nav .lock img,header.nav .items a::after{transition:none!important}}

/* Background textures: tone-on-tone overlays, so they follow whatever the palette colors are */
:root{
--tx-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
--tx-grain-lt:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .5 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
--tx-topo:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='480' fill='none' stroke='%23F5F3EE' stroke-opacity='.07' stroke-width='1.4'%3E%3Cpath d='M-20 60C60 20 120 90 200 60S340 0 420 40 500 80 500 80'/%3E%3Cpath d='M-20 100C70 60 130 130 210 100S350 40 430 80 500 120 500 120'/%3E%3Cpath d='M-20 140C80 100 140 170 220 140S360 80 440 120 500 160 500 160'/%3E%3Cpath d='M-20 300C40 260 110 320 170 290S280 230 330 270 420 330 500 300'/%3E%3Cpath d='M-20 340C50 300 120 360 180 330S290 270 340 310 430 370 500 340'/%3E%3Cpath d='M-20 380C60 340 130 400 190 370S300 310 350 350 440 410 500 380'/%3E%3Cpath d='M-20 420C70 380 140 440 200 410S310 350 360 390 450 450 500 420'/%3E%3Cellipse cx='120' cy='225' rx='60' ry='26'/%3E%3Cellipse cx='120' cy='225' rx='34' ry='13'/%3E%3Cellipse cx='370' cy='205' rx='70' ry='30'/%3E%3Cellipse cx='370' cy='205' rx='44' ry='18'/%3E%3Cellipse cx='370' cy='205' rx='18' ry='7'/%3E%3C/svg%3E");
}
/* Cream page: soft paper grain */
html body{background-image:var(--tx-grain);background-size:220px 220px;background-blend-mode:normal}
/* Dark bands + footer: topographic contour lines over a fine grain */
html body :is(.section.dark,.studio,footer){background-image:var(--tx-topo),var(--tx-grain-lt)!important;background-size:480px 480px,220px 220px!important;background-repeat:repeat!important}
html body :is(.banner,.ticker.garnet){background-image:var(--tx-grain-lt)!important;background-size:220px 220px!important}
/* Sky blue bands: halftone dot screen */
html body :is(.limebg,.sagebg){background-image:radial-gradient(rgba(15,26,23,.13) 1.1px,transparent 1.6px),var(--tx-grain)!important;background-size:16px 16px,220px 220px!important;background-position:0 0,0 0!important}
/* Soft blue bands: drafting / blueprint grid */
html body .tone{background-image:linear-gradient(rgba(15,26,23,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(15,26,23,.075) 1px,transparent 1px),linear-gradient(rgba(15,26,23,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,26,23,.035) 1px,transparent 1px)!important;background-size:160px 160px,160px 160px,32px 32px,32px 32px!important;background-position:-1px -1px!important}
/* Alert strip: fine diagonal hatching */
html body .urgent{background-image:repeating-linear-gradient(135deg,rgba(15,26,23,.045) 0 1px,transparent 1px 9px)!important}
/* Ticker: subtle horizontal pinstripe */
html body .ticker:not(.garnet){background-image:repeating-linear-gradient(0deg,rgba(15,26,23,.06) 0 1px,transparent 1px 6px)!important}
@media print{html body,html body *{background-image:none!important}}
/* hero lead: deeper scrim behind the copy column + larger, stronger-shadowed text so it reads over the photo */
.hero .bg::after{background:linear-gradient(90deg,rgba(10,20,17,.6) 0%,rgba(10,20,17,.32) 42%,rgba(10,20,17,0) 72%),linear-gradient(180deg,rgba(10,20,17,.15) 0%,rgba(10,20,17,.3) 40%,rgba(10,20,17,.9) 100%)!important}
.hero .wrap .lead{color:#fff;font-size:20px;line-height:32px;font-weight:500;letter-spacing:.005em;max-width:34em;text-shadow:0 1px 2px rgba(0,0,0,.65),0 2px 18px rgba(0,0,0,.45)}
@media (max-width:900px){.hero .wrap .lead{font-size:17px;line-height:27px}.hero .bg::after{background:linear-gradient(180deg,rgba(10,20,17,.25) 0%,rgba(10,20,17,.45) 35%,rgba(10,20,17,.92) 100%)!important}}
