/* Interior pages and reusable mascot-led content boxes — Concept 02 extensions */
.interior-page{background:#0b0f10;color:#eef4ec}
.interior-header{position:relative;z-index:10;background:#111714;border-bottom:1px solid #334036}
.interior-nav{display:flex;align-items:center;justify-content:space-between;min-height:100px;gap:32px}
.interior-logo{display:inline-flex;align-items:center;flex:none}
.interior-logo img{display:block;width:183px;height:auto}
.interior-links{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(15px,3vw,40px)}
.interior-links a{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#dce8d4}
.interior-links a:hover,.interior-links a:focus-visible{color:var(--lime)}
.interior-page a:focus-visible,.monster-callout a:focus-visible,.interior-faq summary:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
.interior-hero{position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid #283b2e;padding:clamp(80px,9vw,150px) 0 clamp(80px,9vw,140px);background:radial-gradient(circle at 85% 45%,rgba(164,228,72,.13),transparent 34%),linear-gradient(115deg,#0b1010,#17231a)}
.interior-hero::after{content:"";position:absolute;right:-190px;top:9%;width:540px;height:540px;border:1px solid rgba(174,245,92,.13);border-radius:50%;z-index:-1;box-shadow:0 0 0 60px rgba(174,245,92,.015),0 0 0 120px rgba(174,245,92,.012)}
.interior-kicker{margin:0 0 22px;font-size:10px;font-weight:900;letter-spacing:.18em;color:var(--lime);text-transform:uppercase}
.interior-hero h1{max-width:1030px;font-size:clamp(52px,7.1vw,105px);font-weight:900;letter-spacing:-.075em;line-height:1.02;margin:0 0 30px}
.interior-lede{max-width:710px;font-size:clamp(16px,1.7vw,20px);line-height:1.75;color:#abb7ac;margin:0 0 35px}
.interior-section{padding:clamp(70px,8vw,116px) 0}
.interior-shaded{background:#151d19;border-top:1px solid #2d3c2d;border-bottom:1px solid #2d3c2d}
.interior-intro-grid{display:grid;grid-template-columns:minmax(170px,.5fr) minmax(0,1fr);gap:clamp(40px,8vw,130px);align-items:start}
.interior-intro-grid h2,.monster-callout h2{font-size:clamp(36px,4.2vw,64px);font-weight:900;line-height:1.09;letter-spacing:-.062em;margin:0 0 21px}
.interior-intro-grid p:not(.interior-kicker){max-width:780px;color:#acb8ad;line-height:1.85;font-size:16px}
.interior-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px}
.interior-feature{min-height:250px;padding:31px;background:#1d2920;border:1px solid #354a37;display:flex;flex-direction:column}
.interior-number{display:inline-block;color:var(--lime);font-weight:800;font-size:11px;letter-spacing:.12em;margin-bottom:47px}
.interior-feature h3{font-size:clamp(20px,2vw,28px);font-weight:850;line-height:1.15;margin:0 0 15px;letter-spacing:-.05em}
.interior-feature p{margin:0;font-size:14px;line-height:1.75;color:#a9b5a9}
.interior-steps{margin:0;padding:0;counter-reset:step;list-style:none}
.interior-steps li{counter-increment:step;padding:23px 0;border-bottom:1px solid #354739;display:flex;gap:30px;align-items:center;font-size:17px;font-weight:650}
.interior-steps li::before{content:"0" counter(step);font-size:11px;color:var(--lime);font-weight:900}
.interior-faq details{border-bottom:1px solid #405040;padding:22px 0}
.interior-faq summary{cursor:pointer;font-weight:750;font-size:16px;display:list-item;padding-right:12px}
.interior-faq details p{color:#adb9ad;line-height:1.75;margin:15px 0 0}
.interior-related{padding:55px 0 90px;background:#101512}
.interior-link-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.interior-service-link{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:22px 15px;background:#1b241c;border:1px solid #405042;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;transition:background .18s,border-color .18s}
.interior-service-link span{font-size:20px;color:var(--lime)}
.interior-service-link:hover,.interior-service-link:focus-visible{border-color:var(--lime);background:#273328}
.interior-footer{background:#090e0b;border-top:1px solid #314035;padding:40px 0 25px}
.interior-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}
.interior-footer-inner img{display:block;width:166px;height:auto}
.interior-footer-inner strong{font-size:12px;letter-spacing:.13em}
.interior-footer-inner p{font-size:11px;color:#8d9d8e}
.interior-footer-inner nav{display:flex;gap:22px;flex-wrap:wrap;font-size:12px;font-weight:700}
.interior-footer-inner nav a:hover{color:var(--lime)}
.footer-micro{font-size:10px;letter-spacing:.08em;color:#849184;margin-top:33px;padding-top:18px;border-top:1px solid #263427}
.monster-callout{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,.36fr);align-items:center;gap:24px;position:relative;overflow:hidden;padding:clamp(24px,5vw,58px);background:radial-gradient(circle at 88% 52%,rgba(185,246,76,.17),transparent 33%),linear-gradient(120deg,#1b291e,#172018);border:1px solid #546e40}
.monster-callout::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(130deg,transparent 50%,rgba(170,226,78,.03));}
.monster-callout__copy{position:relative;z-index:2}
.monster-callout__copy p{max-width:620px;color:#adb9ac;font-size:14px;line-height:1.8;margin:0 0 24px}
.monster-callout>img{position:relative;z-index:1;display:block;width:min(100%,230px);height:auto;margin:auto;filter:drop-shadow(0 15px 20px #0008)}
.monster-callout--compact{padding:28px;min-height:290px;grid-template-columns:minmax(0,1fr) 115px}
.monster-callout--compact h3{font-size:clamp(23px,2.4vw,35px);letter-spacing:-.05em;line-height:1.1;margin:0 0 15px}
.monster-callout--compact .interior-kicker{font-size:9px;margin-bottom:15px}
.monster-callout--compact img{width:125px}
.monster-callout--compact .monster-callout__copy p{font-size:12px}
.monster-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.monster-section{padding:90px 0;background:#101713;border-top:1px solid #243829}
.monster-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:34px}
.monster-section-head h2{margin:0;font-size:clamp(35px,4.7vw,67px);letter-spacing:-.06em;line-height:1.05}
.monster-section-head p{max-width:390px;margin:0 0 6px;color:#abb9a9;line-height:1.6;font-size:14px}
.studio-footer-nav{display:flex;gap:15px;flex-wrap:wrap;padding:18px 0 8px;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.studio-footer-nav a{color:#aabd9e}
.studio-footer-nav a:hover,.studio-footer-nav a:focus-visible{color:var(--lime)}
@media(max-width:850px){.interior-nav{min-height:86px}.interior-logo img{width:160px}.interior-feature-grid{grid-template-columns:1fr 1fr}.interior-link-grid{grid-template-columns:1fr 1fr}.interior-intro-grid{grid-template-columns:1fr;gap:15px}.monster-card-grid{grid-template-columns:1fr}.monster-section-head{align-items:start;flex-direction:column}}
@media(max-width:560px){.interior-nav{align-items:start;flex-direction:column;justify-content:center;gap:8px;padding:13px 0}.interior-logo img{width:148px}.interior-links{gap:20px}.interior-links a{font-size:10px}.interior-hero{padding:75px 0}.interior-hero h1{font-size:clamp(47px,11vw,69px)}.interior-feature-grid,.interior-link-grid{grid-template-columns:1fr}.interior-feature{min-height:0}.interior-number{margin-bottom:25px}.interior-footer-inner{align-items:start;flex-direction:column}.monster-callout,.monster-callout--compact{grid-template-columns:1fr;gap:5px}.monster-callout>img{width:160px;justify-self:end}.monster-callout--compact img{width:125px}.monster-section{padding:65px 0}}
@media(prefers-reduced-motion:reduce){.interior-service-link{transition:none}}


/* ── Finished site navigation: one shared pattern across every page ── */
.site-header--unified{z-index:50;background:rgba(12,16,15,.98)}
.nav--unified{position:relative;gap:clamp(12px,2vw,26px)}
.nav--unified>.logo{flex-shrink:0}
.nav-links--unified{gap:clamp(15px,2.5vw,36px)}
.nav-links--unified>.nav-link{display:inline-flex;align-items:center;white-space:nowrap;font-weight:750;min-height:42px}
.nav-links--unified>.nav-link.is-current,.nav-services.is-current>summary,.nav-services-menu a[aria-current="page"]{color:var(--lime)}
.nav-services{position:relative;color:#cbd0ca;font-size:12px;font-weight:750}
.nav-services>summary{list-style:none;display:inline-flex;align-items:center;gap:9px;min-height:42px;cursor:pointer;white-space:nowrap;user-select:none;outline-offset:4px}
.nav-services>summary::-webkit-details-marker{display:none}
.nav-services>summary::marker{content:""}
.nav-services>summary:hover,.nav-services>summary:focus-visible{color:var(--lime)}
.nav-services .nav-chevron{font-size:17px;line-height:1;display:inline-block;transition:transform .18s}
.nav-services[open] .nav-chevron{transform:rotate(180deg)}
.nav-services-menu{position:absolute;left:-19px;top:calc(100% + 10px);width:max-content;min-width:255px;max-width:calc(100vw - 40px);background:#17211a;border:1px solid #526b47;padding:8px;box-shadow:0 22px 70px rgba(0,0,0,.45);z-index:51;display:grid;gap:2px}
.nav-services-menu a{display:block;white-space:nowrap;padding:13px 14px;border:0;border-radius:0;color:#d8e3d3;font-size:11px;font-weight:750;letter-spacing:.02em}
.nav-services-menu a:hover,.nav-services-menu a:focus-visible,.nav-services-menu a[aria-current="page"]{color:var(--lime);background:#293a28}
.nav-mobile-cta{display:none!important}
.nav--unified .nav-cta--unified{flex-shrink:0}
.nav--unified a:focus-visible,.nav--unified button:focus-visible,.nav--unified summary:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
@media(max-width:850px){
  .nav--unified{height:75px;gap:12px}
  .nav--unified .logo img{width:154px}
  .nav--unified .nav-cta--unified{margin-left:auto}
  .nav--unified .menu-toggle{display:block}
  .nav-links--unified{position:absolute;left:-20px;right:-20px;top:100%;display:none;max-height:calc(100vh - 75px);overflow-y:auto;overscroll-behavior:contain;background:#121b15;padding:12px 28px 24px;box-shadow:0 20px 30px #0009;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid #4a6144}
  .nav-links--unified.is-open{display:flex}
  .nav-links--unified>.nav-link{display:flex;width:100%;border-bottom:1px solid #2d3c30;padding:15px 2px;min-height:0}
  .nav-services{width:100%;font-size:12px;border-bottom:1px solid #2d3c30}
  .nav-services>summary{display:flex;justify-content:space-between;width:100%;padding:15px 2px;min-height:0}
  .nav-services-menu{position:static;max-width:none;width:100%;min-width:0;box-shadow:none;border:0;background:#1a271d;padding:4px 10px 13px;margin:0 0 8px}
  .nav-services-menu a{white-space:normal;border-bottom:1px solid #354534;padding:13px 10px;font-size:12px}
  .nav-mobile-cta{display:block!important;background:var(--lime);color:#10170b!important;margin-top:18px;padding:15px!important;font-weight:900!important;letter-spacing:.07em;text-align:center;border:0!important}
  .nav-mobile-cta span{margin-left:12px}
}
@media(max-width:520px){
  .nav--unified{height:68px}
  .nav--unified .logo img{width:143px}
  .nav--unified .nav-cta--unified{display:none}
  .nav--unified .menu-toggle{margin-left:auto}
}
@media(prefers-reduced-motion:reduce){.nav-services .nav-chevron{transition:none}}

/* Service-directory page */
.services-overview-title{font-size:clamp(38px,5vw,76px);line-height:1.07;letter-spacing:-.06em;margin:0 0 38px}
.services-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.services-overview-card{display:flex;flex-direction:column;align-items:flex-start;min-height:350px;border:1px solid #425744;background:radial-gradient(circle at 90% 12%,rgba(172,231,65,.08),transparent 35%),#1c2820;padding:clamp(24px,3vw,40px)}
.services-overview-card .interior-number{margin:0 0 50px}
.services-overview-card h3{font-size:clamp(34px,4vw,55px);letter-spacing:-.065em;line-height:1.04;margin:0 0 21px}
.services-overview-card p:not(.interior-number){font-size:14px;color:#aebbae;line-height:1.8;max-width:445px;margin:0 0 26px}
.services-overview-card a{margin-top:auto;display:flex;justify-content:space-between;align-items:center;width:100%;padding-top:18px;border-top:1px solid #4b6347;font-size:11px;font-weight:900;letter-spacing:.08em;color:var(--lime)}
.services-overview-card a span{font-size:22px}
.services-overview-card a:hover{color:#fff}
.services-overview-card a:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
@media(max-width:650px){.services-overview-grid{grid-template-columns:1fr}.services-overview-card{min-height:290px}.services-overview-card .interior-number{margin-bottom:32px}}

/* Breadcrumb path helps visitors orient between the service index and details. */
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:11px;margin-bottom:27px;font-size:11px;letter-spacing:.035em;color:#9fb29d}
.breadcrumbs a{color:#d7e4d1;text-decoration:underline;text-decoration-color:#50674a;text-underline-offset:4px}
.breadcrumbs a:hover,.breadcrumbs a:focus-visible{color:var(--lime)}
.breadcrumbs [aria-current="page"]{color:var(--lime);font-weight:700}
