:root{
  --bg:#0a0a0a;
  --bg-2:#141414;
  --ink:#f3efe6;
  --ink-2:rgba(243,239,230,.72);
  --ink-3:rgba(243,239,230,.48);
  --gold:#e3141b;
  --gold-2:#ff5c5c;
  --gold-deep:#9e0b10;
  --moss:#24502f;
  --silver:#d6d6d6;
  --wood:#d9a35a;
  --sage:#8fa77a;
  --glass:rgba(255,255,255,.055);
  --glass-strong:rgba(255,255,255,.09);
  --stroke:rgba(255,255,255,.12);
  --stroke-2:rgba(255,255,255,.22);
  --radius:26px;
  --serif:'Instrument Serif', Georgia, serif;
  --sans:'Manrope', system-ui, -apple-system, Segoe UI, sans-serif;
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{
  font-family:var(--sans);
  background:radial-gradient(1200px 800px at 80% -10%, #2a0b0c 0%, transparent 60%),
             radial-gradient(900px 700px at -10% 30%, #0f2416 0%, transparent 60%),
             var(--bg);
  color:var(--ink);
  line-height:1.6;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
em{font-family:var(--serif);font-style:italic;font-weight:400;
   background:linear-gradient(120deg,#ff6a6a,var(--gold) 45%,#b50d13);
   -webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em}
.container{width:min(1200px,92vw);margin:0 auto}
.muted{color:var(--ink-3)}

/* Ambient */
.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;animation:float 22s var(--ease) infinite alternate}
.orb-1{width:520px;height:520px;background:radial-gradient(circle,#e3141b 0%,transparent 70%);top:-160px;right:-120px;opacity:.22}
.orb-2{width:640px;height:640px;background:radial-gradient(circle,#1d5a2c 0%,transparent 70%);bottom:-220px;left:-200px;animation-duration:28s}
.orb-3{width:420px;height:420px;background:radial-gradient(circle,#8fa77a 0%,transparent 70%);top:40%;left:55%;opacity:.12;animation-duration:34s}
@keyframes float{to{transform:translate3d(-60px,80px,0) scale(1.12)}}
.grain{position:absolute;inset:-50%;opacity:.07;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* Glass */
.glass{
  background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025));
  border:1px solid var(--stroke);
  backdrop-filter:blur(22px) saturate(140%);
  -webkit-backdrop-filter:blur(22px) saturate(140%);
  border-radius:var(--radius);
  box-shadow:0 1px 0 rgba(255,255,255,.08) inset, 0 30px 60px -30px rgba(0,0,0,.6);
  position:relative;
}
.glass::before{
  content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(140deg,rgba(255,255,255,.35),rgba(255,255,255,0) 35%,rgba(227,20,27,0) 65%,rgba(227,20,27,.35));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;opacity:.6;
}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.6rem;padding:1rem 1.6rem;border-radius:999px;font-weight:600;font-size:.95rem;letter-spacing:.01em;transition:transform .4s var(--ease),box-shadow .4s var(--ease),background .4s}
.btn-sm{padding:.7rem 1.2rem;font-size:.85rem}
.btn-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold) 45%,var(--gold-deep));color:#ffffff;box-shadow:0 10px 30px -10px rgba(227,20,27,.6),0 1px 0 rgba(255,255,255,.5) inset}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 18px 40px -12px rgba(227,20,27,.75),0 1px 0 rgba(255,255,255,.5) inset}
.btn-glass{background:rgba(255,255,255,.06);border:1px solid var(--stroke-2);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.btn-glass:hover{background:rgba(255,255,255,.12);transform:translateY(-2px)}
.arrow{transition:transform .4s var(--ease)}
.btn:hover .arrow{transform:translateX(4px)}

/* Nav */
.nav-wrap{position:fixed;top:18px;left:0;right:0;z-index:50;display:flex;flex-direction:column;align-items:center}
.nav{width:min(1200px,94vw);display:flex;align-items:center;justify-content:space-between;padding:.7rem .8rem .7rem 1.2rem;border-radius:999px;transition:background .4s, transform .4s}
.nav.scrolled{background:rgba(10,20,15,.6)}
.brand{display:flex;align-items:center;gap:.7rem}
.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-family:var(--serif);font-size:1.15rem;color:#ffffff;background:linear-gradient(135deg,var(--gold-2),var(--gold-deep));box-shadow:0 6px 18px -6px rgba(227,20,27,.7)}
.brand-name{font-weight:700;letter-spacing:.02em}
.nav-links{display:flex;list-style:none;gap:2rem}
.nav-links a{font-size:.9rem;color:var(--ink-2);transition:color .3s;position:relative}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--gold);transition:width .4s var(--ease)}
.nav-links a:hover{color:var(--ink)}
.nav-links a:hover::after{width:100%}
.nav-cta{display:flex;align-items:center;gap:1rem}
.nav-phone{font-size:.88rem;color:var(--ink-2);font-weight:500}
.nav-phone:hover{color:var(--gold-2)}
.menu-toggle{display:none;background:none;border:0;width:42px;height:42px;cursor:pointer;flex-direction:column;justify-content:center;gap:6px;align-items:center}
.menu-toggle span{width:22px;height:1.5px;background:var(--ink);transition:transform .3s}
.mobile-menu{display:none}

/* Hero */
.hero{min-height:100vh;display:flex;align-items:center;padding:150px 0 80px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.22em;color:var(--gold);font-weight:600;margin-bottom:1.4rem}
.dot{width:7px;height:7px;border-radius:50%;background:#7ee0a5;box-shadow:0 0 0 0 rgba(126,224,165,.6);animation:pulse 2.4s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(126,224,165,0)}100%{box-shadow:0 0 0 0 rgba(126,224,165,0)}}
h1{font-family:var(--serif);font-weight:400;font-size:clamp(3.2rem,7.4vw,6.4rem);line-height:.98;letter-spacing:-.02em;margin-bottom:1.6rem}
h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,4.6vw,3.9rem);line-height:1.04;letter-spacing:-.015em}
h3{font-weight:600;font-size:1.15rem;letter-spacing:-.005em;margin-bottom:.5rem}
.lead{font-size:1.12rem;color:var(--ink-2);max-width:560px;margin-bottom:2.2rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:1rem}
.hero-trust{display:flex;gap:2.4rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--stroke)}
.hero-trust div{display:flex;flex-direction:column}
.hero-trust strong{font-family:var(--serif);font-size:2rem;font-weight:400;color:var(--silver);line-height:1}
.hero-trust span{font-size:.8rem;color:var(--ink-3);margin-top:.4rem;max-width:150px}

.hero-card-stack{position:relative;height:540px;margin-bottom:46px}
.hero-card{padding:1.8rem}
.main-card{position:absolute;inset:30px 20px 30px 40px;display:flex;flex-direction:column;animation:bob 9s ease-in-out infinite}
.main-card p{color:var(--ink-2);font-size:.95rem}
.main-card h3{font-family:var(--serif);font-weight:400;font-size:1.9rem;margin-top:auto}
.card-top{display:flex;justify-content:space-between;align-items:center}
.chip{font-size:.72rem;padding:.35rem .8rem;border-radius:999px;background:rgba(126,224,165,.12);color:#9ff0bd;border:1px solid rgba(126,224,165,.3);font-weight:600;letter-spacing:.05em}
.card-label{font-size:.75rem;color:var(--ink-3);letter-spacing:.12em;text-transform:uppercase}
.stump-visual{flex:1;min-height:0;display:grid;place-items:center;padding:1rem 0}
.stump-visual svg{width:min(250px,80%);filter:drop-shadow(0 0 30px rgba(227,20,27,.25))}
.sweep{transform-origin:100px 100px;animation:spin 7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.mini-card{position:absolute;display:flex;align-items:center;gap:.9rem;padding:1rem 1.2rem;border-radius:20px;background:linear-gradient(145deg,rgba(22,22,22,.9),rgba(16,16,16,.75))}
.mini-card strong{display:block;font-size:.95rem}
.mini-card span{font-size:.78rem;color:var(--ink-3)}
.mini-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(227,20,27,.15);color:var(--gold-2);font-size:1.1rem;flex-shrink:0}
.mini-1{top:0;right:-10px;max-width:260px;animation:bob 7s ease-in-out infinite -2s}
.mini-2{bottom:-46px;left:-10px;max-width:270px;animation:bob 8s ease-in-out infinite -4s}
@keyframes bob{50%{transform:translateY(-12px)}}

/* Marquee */
.marquee{border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke);padding:1.4rem 0;overflow:hidden;background:rgba(255,255,255,.02);backdrop-filter:blur(8px)}
.marquee-track{display:flex;gap:2.4rem;width:max-content;animation:scroll 40s linear infinite;font-family:var(--serif);font-size:1.6rem;color:var(--ink-2);white-space:nowrap}
.marquee-track i{color:var(--wood);font-style:normal;font-size:1rem;align-self:center}
@keyframes scroll{to{transform:translateX(-50%)}}

/* Sections */
.section{padding:130px 0}
.section-head{text-align:center;max-width:760px;margin:0 auto 4rem}
.section-sub{color:var(--ink-2);font-size:1.08rem;margin-top:1.2rem}
.section-sub.left{margin:1.4rem 0 2rem;max-width:480px}

.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.feature{padding:2rem 1.7rem 2.2rem;transition:transform .5s var(--ease),background .5s}
.feature:hover{transform:translateY(-6px);background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.035))}
.f-num{font-family:var(--serif);font-size:2.6rem;color:var(--wood);line-height:1;margin-bottom:2.4rem;opacity:.9}
.feature p{color:var(--ink-2);font-size:.93rem}

.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;align-items:stretch}
.service{padding:2.4rem 2rem;transition:transform .5s var(--ease)}
.service:hover{transform:translateY(-6px)}
.service.featured{background:linear-gradient(160deg,rgba(227,20,27,.16),rgba(255,255,255,.03) 60%);border-color:rgba(227,20,27,.35)}
.tag{position:absolute;top:1.4rem;right:1.4rem;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-2);border:1px solid rgba(227,20,27,.4);padding:.3rem .7rem;border-radius:999px}
.s-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:rgba(255,255,255,.07);border:1px solid var(--stroke);margin-bottom:1.8rem}
.s-icon svg{width:24px;height:24px;fill:none;stroke:var(--gold-2);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.service h3{font-family:var(--serif);font-weight:400;font-size:1.75rem;line-height:1.1;margin-bottom:.8rem}
.service p{color:var(--ink-2);font-size:.95rem;margin-bottom:1.6rem}
.service ul{list-style:none;border-top:1px solid var(--stroke);padding-top:1.2rem;display:grid;gap:.6rem}
.service li{font-size:.9rem;color:var(--ink-2);display:flex;align-items:center;gap:.7rem}
.service li::before{content:"";width:16px;height:16px;border-radius:50%;flex-shrink:0;background:radial-gradient(circle,var(--gold) 0 3px,transparent 4px),rgba(227,20,27,.14)}

.process{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.process-line{position:absolute;top:50px;left:8%;right:8%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.4}
.step{padding:2rem 1.6rem}
.step-num{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:1.4rem;background:var(--bg-2);border:1px solid rgba(227,20,27,.5);color:var(--gold-2);margin-bottom:1.6rem;box-shadow:0 0 0 6px rgba(227,20,27,.07)}
.step p{color:var(--ink-2);font-size:.92rem}

.areas-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.areas-card{padding:2.2rem}
.area-list{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-bottom:1.6rem}
.area-list span,.area-list a{display:block;padding:.85rem .9rem;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid var(--stroke);font-size:.9rem;text-align:center;transition:all .35s var(--ease)}
.area-list span:hover,.area-list a:hover{background:rgba(227,20,27,.14);border-color:rgba(227,20,27,.45);color:var(--gold-2)}
.hq{display:flex;gap:1rem;align-items:center;padding:1.2rem;border-radius:18px;background:rgba(0,0,0,.2);border:1px solid var(--stroke)}
.hq strong{display:block;font-size:.95rem}
.hq span{font-size:.86rem;color:var(--ink-3)}
.pin{color:var(--gold);font-size:1.3rem}

.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:3.5rem;padding:3.5rem;align-items:center;overflow:hidden}
.about-mono{aspect-ratio:1;border-radius:22px;display:grid;place-items:center;position:relative;overflow:hidden;
  background:radial-gradient(circle at 30% 20%,rgba(227,20,27,.35),transparent 60%),linear-gradient(160deg,#1a3a22,#0c0c0c);border:1px solid var(--stroke)}
.about-mono::after{content:"";position:absolute;inset:14%;border-radius:50%;border:1px solid rgba(227,20,27,.25);box-shadow:0 0 0 28px rgba(227,20,27,.04),0 0 0 60px rgba(227,20,27,.03)}
.about-mono span{font-family:var(--serif);font-size:clamp(4rem,9vw,7rem);color:var(--silver);position:relative;z-index:1}
.about h2{margin-bottom:.6rem}
.about-lead{font-family:var(--serif);font-style:italic;font-size:1.35rem;color:var(--gold-2);margin-bottom:1.2rem}
.about-copy > p:not(.eyebrow):not(.about-lead){color:var(--ink-2)}
.about-points{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}
.about-points div{padding:1rem;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid var(--stroke)}
.about-points strong{display:block;font-size:.92rem}
.about-points span{font-size:.8rem;color:var(--ink-3)}

.faq-wrap{max-width:860px}
.faq-list{display:grid;gap:.9rem}
.faq{border-radius:20px;padding:0;overflow:hidden}
.faq summary{list-style:none;cursor:pointer;padding:1.4rem 1.6rem;font-weight:600;font-size:1.02rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.plus{width:28px;height:28px;border-radius:50%;border:1px solid var(--stroke-2);position:relative;flex-shrink:0;transition:transform .4s var(--ease),background .4s}
.plus::before,.plus::after{content:"";position:absolute;top:50%;left:50%;width:11px;height:1.5px;background:var(--gold-2);transform:translate(-50%,-50%)}
.plus::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .4s var(--ease)}
.faq[open] .plus{background:rgba(227,20,27,.15)}
.faq[open] .plus::after{transform:translate(-50%,-50%) rotate(0)}
.faq p{padding:0 1.6rem 1.5rem;color:var(--ink-2);font-size:.95rem}
.faq p a{color:var(--gold-2);border-bottom:1px solid rgba(227,20,27,.4)}

.cta{display:grid;grid-template-columns:1.3fr .7fr;gap:3rem;padding:4rem;overflow:hidden}
.cta-glow{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(227,20,27,.25),transparent 65%);top:-300px;left:-150px;pointer-events:none}
.cta-copy{position:relative}
.cta-copy h2{margin-bottom:1rem}
.cta-copy > p:not(.eyebrow){color:var(--ink-2);margin-bottom:2rem;font-size:1.05rem}
.cta-info{display:grid;gap:1rem;align-content:center;position:relative}
.info-row{padding:1.1rem 1.3rem;border-radius:16px;background:rgba(0,0,0,.22);border:1px solid var(--stroke);display:flex;flex-direction:column;gap:.25rem;font-size:.95rem}
.info-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:var(--gold)}
.info-row a:hover{color:var(--gold-2)}

.footer{padding:60px 0 100px;border-top:1px solid var(--stroke)}
.footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.4rem}
.footer-links{display:flex;gap:1.6rem;font-size:.9rem;color:var(--ink-2)}
.footer-links a:hover{color:var(--gold-2)}
.copyright{width:100%;font-size:.8rem;text-align:center;padding-top:1.6rem;border-top:1px solid var(--stroke)}

.float-call{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;display:none;place-items:center;z-index:40;background:linear-gradient(135deg,var(--gold-2),var(--gold-deep));border:0}
.float-call svg{width:24px;height:24px;fill:none;stroke:#ffffff;stroke-width:1.8;stroke-linejoin:round}

/* Reveal */
.reveal{opacity:0;transform:translateY(30px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.reveal.in{opacity:1;transform:none}
.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}

/* Responsive */
@media (max-width:1024px){
  .nav-links,.nav-phone{display:none}
  .hero-grid,.areas-grid,.about,.cta{grid-template-columns:1fr}
  .hero-card-stack{height:480px}
  .feature-grid{grid-template-columns:repeat(2,1fr)}
  .service-grid{grid-template-columns:1fr}
  .process{grid-template-columns:repeat(2,1fr)}
  .process-line{display:none}
  .about-mono{max-width:280px}
}
@media (max-width:680px){
  .nav-cta .btn{display:none}
  .menu-toggle{display:flex}
  .mobile-menu{display:flex;flex-direction:column;width:94vw;margin-top:10px;padding:1rem;gap:.2rem;opacity:0;pointer-events:none;transform:translateY(-10px);transition:all .4s var(--ease)}
  .mobile-menu a{padding:.9rem 1rem;border-radius:14px}
  .mobile-menu a:hover{background:rgba(255,255,255,.06)}
  .nav-wrap.open .mobile-menu{opacity:1;pointer-events:auto;transform:none}
  .nav-wrap.open .menu-toggle span:first-child{transform:translateY(3.75px) rotate(45deg)}
  .nav-wrap.open .menu-toggle span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
  .section{padding:90px 0}
  .hero{padding-top:130px}
  .hero-trust{gap:1.4rem;flex-wrap:wrap}
  .feature-grid,.process,.about-points{grid-template-columns:1fr}
  .area-list{grid-template-columns:repeat(2,1fr)}
  .about,.cta{padding:2rem}
  .hero-card-stack{height:560px}
  .main-card{inset:96px 0 70px 0}
  .mini-1{top:0;right:0;max-width:240px}
  .mini-2{bottom:0;left:0}
  .float-call{display:grid}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}

/* Logo */
.brand-logo{height:46px;width:auto;filter:drop-shadow(0 4px 12px rgba(227,20,27,.35))}
.footer .brand-logo{height:60px}
.hero-logo{flex:1;min-height:0;display:grid;place-items:center;padding:.6rem 0 1rem}
.hero-logo img{height:250px;width:auto;max-width:90%;object-fit:contain;filter:drop-shadow(0 18px 40px rgba(0,0,0,.6)) drop-shadow(0 0 40px rgba(227,20,27,.18));animation:logoIn 1.2s var(--ease) both}
@keyframes logoIn{from{opacity:0;transform:scale(.92) translateY(10px)}}
.service.featured{background:linear-gradient(160deg,rgba(227,20,27,.16),rgba(255,255,255,.03) 60%)}
.btn-gold{text-shadow:0 1px 0 rgba(0,0,0,.25)}
@media (max-width:680px){.brand-logo{height:40px}.hero-logo img{height:170px}}

/* City pages */
.city-hero{min-height:88vh}
.crumbs{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.82rem;color:var(--ink-3);margin-bottom:1.4rem}
.crumbs a:hover{color:var(--gold-2)}
.city-card{padding:2.2rem;display:flex;flex-direction:column;align-items:center;gap:1.8rem;animation:bob 9s ease-in-out infinite}
.city-card img{width:min(300px,80%);height:auto;filter:drop-shadow(0 18px 40px rgba(0,0,0,.6)) drop-shadow(0 0 40px rgba(227,20,27,.18))}
.city-card-info{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}
.city-card-info div{padding:.9rem;border-radius:14px;background:rgba(0,0,0,.25);border:1px solid var(--stroke);display:flex;flex-direction:column;gap:.2rem}
.city-card-info strong{font-size:.9rem}
.footer-areas{width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;padding-top:1.4rem;border-top:1px solid var(--stroke)}
.footer-areas div{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem}
.footer-areas a{font-size:.86rem;color:var(--ink-2)}
.footer-areas a:hover,.footer-areas a.current{color:var(--gold-2)}
@media (max-width:680px){.city-card-info{grid-template-columns:1fr}}
.service .tag + h3{margin-top:1.8rem}

/* About photo */
.about-photo{position:relative;margin:0;border-radius:22px;overflow:hidden;aspect-ratio:4/5;border:1px solid var(--stroke);box-shadow:0 30px 60px -25px rgba(0,0,0,.7)}
.about-photo img{width:100%;height:100%;object-fit:cover;object-position:60% 40%;display:block;transition:transform 1.2s var(--ease)}
.about-photo:hover img{transform:scale(1.04)}
.about-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.55));pointer-events:none}
.about-photo figcaption{position:absolute;left:14px;right:14px;bottom:14px;z-index:1;padding:.9rem 1.1rem;border-radius:16px;background:linear-gradient(145deg,rgba(18,18,18,.75),rgba(18,18,18,.5));display:flex;flex-direction:column}
.about-photo figcaption strong{font-size:.95rem}
.about-photo figcaption span{font-size:.8rem;color:var(--ink-3)}
@media (max-width:1024px){.about-photo{max-width:420px}}

.about-copy > p + p{margin-top:.9rem}
.values{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.4rem}
.values span{font-size:.8rem;padding:.4rem .85rem;border-radius:999px;border:1px solid rgba(227,20,27,.4);background:rgba(227,20,27,.08);color:var(--ink)}
.reach{margin-top:1.4rem;font-size:.95rem;color:var(--ink-2)}
.reach a{color:var(--gold-2);border-bottom:1px solid rgba(227,20,27,.4)}

.ray-img{object-position:50% 35%!important}
/* Rig band */
.rig-section{padding-top:40px}
.rig-band{margin:0;position:relative;overflow:hidden;min-height:520px;display:flex;align-items:flex-end;padding:0}
.rig-band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%;transition:transform 1.4s var(--ease)}
.rig-band:hover img{transform:scale(1.03)}
.rig-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,8,.92) 0%,rgba(8,8,8,.7) 38%,rgba(8,8,8,.05) 70%),linear-gradient(0deg,rgba(8,8,8,.6),transparent 40%);pointer-events:none}
.rig-copy{position:relative;z-index:1;max-width:520px;padding:3rem}
.rig-copy h2{margin-bottom:1rem}
.rig-copy > p:not(.eyebrow){color:var(--ink-2);margin-bottom:1.8rem}
@media (max-width:680px){
  .rig-band{flex-direction:column;align-items:stretch;min-height:0}
  .rig-band img{position:relative;height:240px}
  .rig-band::after{background:linear-gradient(180deg,transparent 120px,rgba(8,8,8,.95) 240px)}
  .rig-copy{padding:1.6rem}
}

/* Fully stocked */
.stocked-section{padding-top:24px}
.stocked{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;padding:3rem;align-items:center;overflow:hidden}
.stocked-copy h2{margin-bottom:1rem}
.stocked-copy > p:not(.eyebrow){color:var(--ink-2);margin-bottom:1.8rem;max-width:560px}
.stock-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.stock-list li{padding:1rem 1.1rem 1rem 2.6rem;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid var(--stroke);position:relative;display:flex;flex-direction:column;gap:.15rem}
.stock-list li::before{content:"";position:absolute;left:1rem;top:1.25rem;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle,var(--gold) 0 3px,transparent 4px),rgba(227,20,27,.18)}
.stock-list strong{font-size:.93rem}
.stock-list span{font-size:.8rem;color:var(--ink-3)}
.stocked-photo{margin:0;border-radius:22px;overflow:hidden;aspect-ratio:4/5;border:1px solid var(--stroke);box-shadow:0 30px 60px -25px rgba(0,0,0,.7)}
.stocked-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--ease)}
.stocked-photo:hover img{transform:scale(1.04)}
@media (max-width:1024px){.stocked{grid-template-columns:1fr}.stocked-photo{max-width:440px;order:-1}}
@media (max-width:680px){.stocked{padding:1.6rem}.stock-list{grid-template-columns:1fr}}
