/* ============================================================
   Rockam design system.
   Palette, geometry and shadows carried over from the approved
   preview. Inner pages extend that language rather than
   introducing a second one.
   ============================================================ */

:root{
  --page:#1C4630; --body-ink:#22302A;
  --hero-1:#4E8073; --hero-2:#63968A; --hero-3:#3C6B5E;
  --wedge-1:#8B5E44; --wedge-2:#906C54; --wedge-3:#57897B;
  --cream:#F3E6CF; --cream-soft:rgba(243,230,207,.80);
  --pill:#E8C193; --pill-ink:#4A3524;
  --glass:rgba(255,255,255,.90); --glass-edge:rgba(255,255,255,.66); --obj-ink:#2A3D36;
  --line:#2E6B5B; --ring-track:rgba(46,107,91,.18); --bar:#5C8C7C; --pos:#3F7D5E;
  --slab:#C89A6B; --slab-edge:rgba(255,255,255,.42); --slab-ink:#3A2A1B;
  --band-bg:#5E845E; --grid:rgba(255,255,255,.10); --band-vig:rgba(28,58,38,.30);
  --panel:#24544A; --panel-curve:rgba(255,255,255,.045); --panel-rule:rgba(255,255,255,.14);
  --grid-d:rgba(255,255,255,.05);
  --footer:#0C3024; --footer-ink:rgba(255,255,255,.55);
  /* product surfaces, matching the home cards */
  --optics:#789C60; --optics-ink:#1D2D15; --optics-badge:#3E5C2C;
  --lenbi:#6C4830;  --lenbi-ink:#F4E6D7;  --lenbi-badge:#2E1C10;
  --tan-card:#84603C; --deep-card:#3C2418; --pale-card:#B49078;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;font-family:'Inter',system-ui,-apple-system,sans-serif;
  background:var(--page);color:var(--body-ink);overflow-x:hidden;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 40px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- header / nav ---------- */
.topbar{position:absolute;top:0;left:0;right:0;z-index:20;padding-top:30px}
.topbar .wrap{display:flex;align-items:center;gap:28px}
.logo{
  display:block;width:128px;height:33px;flex:0 0 auto;
  background:var(--cream);
  -webkit-mask:url(rockam-wordmark.png) no-repeat left center / contain;
          mask:url(rockam-wordmark.png) no-repeat left center / contain;
  opacity:.95;transition:opacity .2s;
}
.logo:hover{opacity:1}
.nav{
  margin-left:auto;display:flex;align-items:center;gap:2px;padding:4px;
  background:rgba(10,42,31,.42);backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.10);border-radius:999px;
}
.nav a{
  font-size:14px;font-weight:500;color:var(--cream);
  padding:9px 18px;border-radius:999px;transition:background .2s,color .2s;
}
.nav a:hover{background:rgba(255,255,255,.14)}
.nav a[aria-current="page"]{background:var(--pill);color:var(--pill-ink);font-weight:600}
.navtoggle{
  display:none;margin-left:auto;width:42px;height:42px;border:0;border-radius:999px;
  background:rgba(255,255,255,.12);color:var(--cream);cursor:pointer;
  align-items:center;justify-content:center;
}
.navtoggle svg{width:20px;height:20px}

/* ---------- hero (home) ---------- */
.hero{
  position:relative;min-height:660px;display:flex;align-items:center;overflow:hidden;
  background:radial-gradient(120% 105% at 74% 10%,var(--hero-2) 0%,var(--hero-1) 46%,var(--hero-3) 100%);
}
.wedge{position:absolute;pointer-events:none}
.wedge-tr{top:-30%;right:-14%;width:74%;height:118%;background:var(--wedge-1);
  border-radius:42% 58% 46% 54% / 62% 38% 62% 38%;transform:rotate(-14deg)}
.wedge-bl{bottom:-46%;left:-20%;width:54%;height:84%;background:var(--wedge-2);
  border-radius:48% 52% 56% 44% / 38% 62% 38% 62%;transform:rotate(16deg)}
.wedge-soft{top:-8%;right:16%;width:46%;height:86%;background:var(--wedge-3);
  border-radius:58% 42% 44% 56% / 52% 56% 44% 48%;opacity:.5;transform:rotate(6deg)}
.hero .wrap{position:relative;z-index:5;width:100%}
.hero-copy{max-width:520px;padding:118px 0 96px}
.hero h1{
  margin:0 0 26px;font-family:'Poppins',system-ui,sans-serif;font-weight:700;
  font-size:clamp(40px,4.6vw,62px);line-height:1.04;letter-spacing:-.018em;color:var(--cream);
}
.hero h1 span{display:block;white-space:nowrap}
.hero p{margin:0 0 38px;max-width:400px;font-size:15px;line-height:1.95;color:var(--cream)}
.btn-pill{
  display:inline-block;padding:17px 40px;border-radius:999px;
  background:var(--pill);color:var(--pill-ink);
  font-family:'Poppins',system-ui,sans-serif;font-weight:600;font-size:15px;
  box-shadow:0 14px 30px -10px rgba(0,0,0,.42),0 2px 4px rgba(0,0,0,.14);
  transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s;
}
.btn-pill:hover{transform:translateY(-2px);box-shadow:0 20px 38px -10px rgba(0,0,0,.5),0 2px 4px rgba(0,0,0,.16)}

/* Soft scrim under the copy column. The wedges and gradient pass beneath the
   text at varying lightness, which left body copy around 3.3:1. This sits
   above the wedges and below the collage, lifting the copy to AA without
   altering the palette. */
.hero::after,.phead::after{
  content:'';position:absolute;inset:0;z-index:3;pointer-events:none;
  background:linear-gradient(96deg,
    rgba(14,48,36,.72) 0%,
    rgba(14,48,36,.56) 34%,
    rgba(14,48,36,.16) 56%,
    rgba(14,48,36,0) 70%);
}

/* ---------- data collage ---------- */
.collage{position:absolute;top:66px;right:-60px;width:58%;height:calc(100% - 66px);z-index:4;pointer-events:none}
.obj{
  position:absolute;border-radius:18px;background:var(--glass);border:1px solid var(--glass-edge);
  backdrop-filter:blur(6px);padding:16px 18px;color:var(--obj-ink);font-size:11px;
  box-shadow:0 2px 4px rgba(0,0,0,.10),0 12px 24px -6px rgba(0,0,0,.28),0 40px 70px -20px rgba(0,0,0,.40);
}
.obj .lbl{font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;opacity:.62}
.obj .val{font-family:'Poppins',sans-serif;font-weight:700;font-size:21px;line-height:1.1;margin-top:5px}
.obj .delta{font-size:10px;color:var(--pos);margin-top:3px;font-weight:600}
.o1{top:5%;left:30%;width:224px;transform:rotate(-10deg)}
.o2{top:2%;left:64%;width:188px;transform:rotate(8deg)}
.o3{top:26%;left:5%;width:208px;transform:rotate(-5deg)}
.o4{top:32%;left:33%;width:326px;transform:rotate(4deg);padding:22px}
.o5{top:62%;left:11%;width:246px;transform:rotate(-7deg)}
.o6{top:56%;left:72%;width:194px;transform:rotate(10deg)}
.o7{top:78%;left:43%;width:188px;transform:rotate(-4deg)}
.o8{top:13%;left:82%;width:166px;transform:rotate(-6deg)}
.o9{top:73%;left:76%;width:174px;transform:rotate(6deg)}
.o-accent{background:var(--slab);border-color:var(--slab-edge);color:var(--slab-ink)}
.o-accent .lbl{opacity:.7}
.spark{display:block;width:100%;height:34px;margin-top:10px}
.bars{display:flex;align-items:flex-end;gap:5px;height:46px;margin-top:12px}
.bars i{flex:1;border-radius:3px 3px 0 0;background:var(--bar);display:block}
.ring{display:block;margin:4px auto 0}

/* ---------- page header (inner pages) ---------- */
.phead{
  position:relative;overflow:hidden;
  background:radial-gradient(120% 115% at 74% 12%,var(--hero-2) 0%,var(--hero-1) 46%,var(--hero-3) 100%);
}
.phead .wrap{position:relative;z-index:5}
.phead-in{padding:150px 0 90px;max-width:760px}
.phead .eyebrow{
  font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--pill);font-weight:600;margin:0 0 18px;
}
.phead h1{
  margin:0;font-family:'Poppins',sans-serif;font-weight:700;
  font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.018em;color:var(--cream);
  text-wrap:balance;
}
.phead .intro{margin:26px 0 0;max-width:620px}
.phead .intro p{margin:0;font-size:16px;line-height:1.9;color:var(--cream)}
.phead .intro p + p{margin-top:16px}

/* ---------- pillar band ---------- */
.band{position:relative;padding:92px 0 104px;background:var(--band-bg)}
.band::before{content:'';position:absolute;inset:0;
  background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);
  background-size:44px 44px;opacity:.5}
.band::after{content:'';position:absolute;inset:0;
  background:radial-gradient(70% 60% at 50% 40%,transparent 40%,var(--band-vig) 100%)}
.band .wrap{position:relative;z-index:3}
.panel{
  position:relative;overflow:hidden;border-radius:30px;background:var(--panel);
  padding:58px 44px 60px;box-shadow:0 30px 70px -24px rgba(0,0,0,.52),0 4px 10px rgba(0,0,0,.14);
}
.panel-curve{position:absolute;bottom:-62%;width:62%;height:190%;background:var(--panel-curve);
  border-radius:50% 50% 0 0 / 58% 58% 0 0;pointer-events:none}
.pc1{left:-10%}.pc2{left:26%;height:165%}.pc3{left:62%;height:205%}
.pillars{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr)}
.pillar{padding:0 26px;border-left:1px solid var(--panel-rule)}
.pillar:first-child{border-left:0;padding-left:0}
.pillar:last-child{padding-right:0}
.pillar svg{width:46px;height:46px;stroke:#fff;fill:none;stroke-width:1.4}
.pillar h2{margin:22px 0 12px;font-family:'Poppins',sans-serif;font-weight:600;font-size:17px;color:#fff}
.pillar p{margin:0;font-size:12.5px;line-height:1.78;color:rgba(255,255,255,.74)}

/* ---------- card grid ---------- */
.grid-sec{position:relative;padding:0 0 96px;background:var(--page)}
.grid-sec::before{content:'';position:absolute;inset:0;
  background-image:linear-gradient(var(--grid-d) 1px,transparent 1px);background-size:100% 52px;opacity:.35}
.grid-sec .wrap{position:relative;z-index:2}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.cards + .cards{margin-top:24px}
.card{
  position:relative;isolation:isolate;overflow:hidden;border-radius:22px;
  padding:30px 28px 32px;min-height:236px;
  box-shadow:0 18px 38px -14px rgba(0,0,0,.46),0 3px 7px rgba(0,0,0,.16);
  transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s;
}
.card:hover{transform:translateY(-5px);box-shadow:0 28px 54px -16px rgba(0,0,0,.54),0 3px 7px rgba(0,0,0,.18)}
.card h3{margin:20px 0 10px;font-family:'Poppins',sans-serif;font-weight:700;font-size:19px}
.card p{margin:0;font-size:13px;line-height:1.8}
.card .meta{margin-top:16px;font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.78}
.badge{position:relative;z-index:1;width:56px;height:56px;border-radius:50%;
  display:flex;align-items:center;justify-content:center}
.badge svg{width:26px;height:26px}
.badge::after{content:'';position:absolute;left:50%;top:50%;width:340px;height:56px;
  transform:translateY(-50%) rotate(34deg);transform-origin:left center;
  background:linear-gradient(90deg,var(--long-shadow) 0%,transparent 68%);
  border-radius:0 999px 999px 0;z-index:-1}
.card-photo{padding:0;min-height:236px}
.card-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.card-photo .cap{position:absolute;inset:auto 0 0 0;z-index:2;padding:26px 26px 24px;
  background:linear-gradient(transparent,rgba(0,0,0,.82));color:#fff}
.card-photo .cap h3{margin:0 0 6px;font-size:18px}
.card-photo .cap p{color:rgba(255,255,255,.84)}

.c-1{background:var(--optics);color:var(--optics-ink)}.c-1 p{color:var(--optics-ink)}
.b-1{background:var(--optics-badge);color:#DFF0CC}.c-1 .badge::after{--long-shadow:rgba(40,66,26,.30)}
.c-2{background:var(--lenbi);color:var(--lenbi-ink)}.c-2 p{color:rgba(244,230,215,.80)}
.b-2{background:var(--lenbi-badge);color:#E8CBA8}.c-2 .badge::after{--long-shadow:rgba(26,15,7,.34)}
.c-3{background:var(--tan-card);color:#F8ECDC}.c-3 p{color:#F8ECDC}
.b-3{background:#3A2716;color:#F0D2A6}.c-3 .badge::after{--long-shadow:rgba(34,22,12,.32)}
.c-5{background:var(--deep-card);color:#ECDECD}.c-5 p{color:rgba(236,222,205,.78)}
.b-5{background:#14100C;color:#D9B98C}.c-5 .badge::after{--long-shadow:rgba(8,5,3,.40)}
.c-6{background:var(--pale-card);color:#32221A}.c-6 p{color:#32221A}
.b-6{background:#6B4A32;color:#F4DEC6}.c-6 .badge::after{--long-shadow:rgba(80,54,36,.30)}

/* ---------- generic content sections ---------- */
.sec{position:relative;background:var(--page);padding:96px 0}
.sec.tight{padding:70px 0}
.sec::before{content:'';position:absolute;inset:0;
  background-image:linear-gradient(var(--grid-d) 1px,transparent 1px);background-size:100% 52px;opacity:.35}
.sec .wrap{position:relative;z-index:2}
.sec-label{
  font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;
  color:var(--pill);margin:0 0 20px;
}

/* big product panel */
.pcard{
  position:relative;isolation:isolate;overflow:hidden;border-radius:26px;padding:52px 48px 54px;
  box-shadow:0 24px 54px -18px rgba(0,0,0,.5),0 4px 9px rgba(0,0,0,.18);
}
.pcard + .pcard{margin-top:28px}
.pcard.optics{background:var(--optics);color:var(--optics-ink)}
.pcard.lenbi{background:var(--lenbi);color:var(--lenbi-ink)}
.pcard h2{margin:20px 0 6px;font-family:'Poppins',sans-serif;font-weight:700;font-size:34px;letter-spacing:-.02em}
.pcard .tagline{margin:0 0 26px;font-family:'Poppins',sans-serif;font-weight:600;font-size:19px}
.pcard .prose{max-width:64ch}
.pcard .prose p{margin:0;font-size:15px;line-height:1.9}
.pcard .prose p + p{margin-top:14px}
.pcard.optics .prose p{color:var(--optics-ink)}
.pcard.lenbi  .prose p{color:rgba(244,230,215,.86)}
.pcard .rule{height:1px;margin:38px 0 32px;background:currentColor;opacity:.16}
.pcard h3{margin:0 0 20px;font-family:'Poppins',sans-serif;font-weight:600;font-size:18px}

.feat{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:22px 40px}
.feat li{font-size:14px;line-height:1.75}
.feat b{display:block;font-family:'Poppins',sans-serif;font-weight:600;font-size:14.5px;margin-bottom:5px}
.pcard.optics .feat li{color:var(--optics-ink)}
.pcard.lenbi  .feat li{color:rgba(244,230,215,.82)}

.plain{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 40px}
.plain li{position:relative;padding-left:20px;font-size:14.5px;line-height:1.7}
.plain li::before{content:'';position:absolute;left:0;top:9px;width:7px;height:7px;border-radius:50%;
  background:currentColor;opacity:.55}

.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.steps .n{
  font-family:'Poppins',sans-serif;font-weight:700;font-size:13px;letter-spacing:.08em;
  display:inline-block;padding:5px 12px;border-radius:999px;margin-bottom:14px;
}
.pcard.optics .steps .n{background:rgba(29,45,21,.14);color:var(--optics-ink)}
.pcard.lenbi  .steps .n{background:rgba(244,230,215,.16);color:var(--lenbi-ink)}
.steps b{display:block;font-family:'Poppins',sans-serif;font-weight:600;font-size:16px;margin-bottom:8px}
.steps p{margin:0;font-size:14px;line-height:1.75}
.pcard.optics .steps p{color:var(--optics-ink)}
.pcard.lenbi  .steps p{color:rgba(244,230,215,.82)}

.linkout{margin-top:36px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.linkout p{margin:0;font-size:14.5px;line-height:1.7;max-width:44ch}
.pcard.optics .linkout p{color:var(--optics-ink)}
.pcard.lenbi  .linkout p{color:rgba(244,230,215,.82)}
.btn-solid{
  display:inline-block;padding:15px 32px;border-radius:999px;
  font-family:'Poppins',sans-serif;font-weight:600;font-size:14.5px;white-space:nowrap;
  box-shadow:0 12px 26px -10px rgba(0,0,0,.45);transition:transform .25s cubic-bezier(.16,1,.3,1)}
.btn-solid:hover{transform:translateY(-2px)}
.pcard.optics .btn-solid{background:var(--optics-badge);color:#EAF6DE}
.pcard.lenbi  .btn-solid{background:var(--pill);color:var(--pill-ink)}

.pcard.optics .badge::after{--long-shadow:rgba(40,66,26,.30)}
.pcard.lenbi .badge::after{--long-shadow:rgba(26,15,7,.34)}

/* mission / vision */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.mv{background:var(--panel);border-radius:22px;padding:40px 38px;color:#fff;
  box-shadow:0 20px 48px -18px rgba(0,0,0,.5)}
.mv h2{margin:0 0 16px;font-family:'Poppins',sans-serif;font-weight:600;font-size:20px}
.mv p{margin:0;font-size:15px;line-height:1.9;color:rgba(255,255,255,.82)}

/* values */
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.value-card{border-radius:20px;padding:32px 28px;min-height:200px;
  box-shadow:0 16px 34px -14px rgba(0,0,0,.44),0 3px 6px rgba(0,0,0,.14)}
.value-card h3{margin:0 0 12px;font-family:'Poppins',sans-serif;font-weight:700;font-size:17px}
.value-card p{margin:0;font-size:13.5px;line-height:1.8}
.value-card.v1{background:var(--optics);color:var(--optics-ink)}.value-card.v1 p{color:#1D2D15}
.value-card.v2{background:var(--lenbi);color:#F4E6D7}.value-card.v2 p{color:rgba(244,230,215,.80)}
.value-card.v3{background:var(--tan-card);color:#F8ECDC}.value-card.v3 p{color:#F8ECDC}
.value-card.v4{background:var(--deep-card);color:#ECDECD}.value-card.v4 p{color:rgba(236,222,205,.78)}
.value-card.v5{background:var(--pale-card);color:#32221A}.value-card.v5 p{color:#32221A}
.value-card.v6{background:var(--panel);color:#fff}.value-card.v6 p{color:rgba(255,255,255,.80)}

/* cream feature panel */
.cream-panel{
  background:var(--cream);color:#2A3D36;border-radius:26px;padding:56px 52px;
  box-shadow:0 24px 54px -20px rgba(0,0,0,.45);
}
.cream-panel h2{margin:0 0 24px;font-family:'Poppins',sans-serif;font-weight:700;
  font-size:clamp(24px,2.6vw,32px);line-height:1.2;letter-spacing:-.015em;max-width:22ch}
.cream-panel .prose{max-width:70ch}
.cream-panel .prose p{margin:0;font-size:15.5px;line-height:1.92;color:rgba(42,61,54,.86)}
.cream-panel .prose p + p{margin-top:16px}

/* small company block */
.company{border-top:1px solid rgba(255,255,255,.12);padding-top:30px;color:var(--cream-soft);font-size:14.5px;line-height:1.9}
.company b{color:var(--cream);font-weight:600;font-family:'Poppins',sans-serif}

/* ---------- contact ---------- */
.contact-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:28px;align-items:start}
.form-panel{background:var(--cream);border-radius:26px;padding:44px 42px 46px;
  box-shadow:0 24px 54px -20px rgba(0,0,0,.45)}
.field{margin-bottom:20px}
.field label{display:block;font-family:'Poppins',sans-serif;font-weight:600;font-size:13.5px;
  color:#2A3D36;margin-bottom:8px}
.field label .opt{font-weight:400;color:rgba(42,61,54,.55)}
.field input,.field select,.field textarea{
  width:100%;font-family:'Inter',sans-serif;font-size:15px;color:#22302A;
  background:#fff;border:1px solid #DCCDB4;border-radius:11px;padding:13px 15px;
  transition:border-color .18s,box-shadow .18s;
}
.field textarea{min-height:140px;resize:vertical}
.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%234A3524' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 15px center;padding-right:42px}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:#8A9E6E;box-shadow:0 0 0 3px rgba(120,156,96,.28)}
.field .err{display:none;margin-top:7px;font-size:12.5px;color:#8C3B2B;font-weight:500}
.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:#B4564A}
.field.invalid .err{display:block}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.btn-send{
  border:0;cursor:pointer;display:inline-block;padding:16px 38px;border-radius:999px;
  background:var(--optics-badge);color:#EAF6DE;font-family:'Poppins',sans-serif;
  font-weight:600;font-size:15px;box-shadow:0 12px 26px -10px rgba(0,0,0,.45);
  transition:transform .25s cubic-bezier(.16,1,.3,1)}
.btn-send:hover{transform:translateY(-2px)}
.btn-send[disabled]{opacity:.6;cursor:default;transform:none}
.thanks{display:none}
.thanks h2{margin:0 0 14px;font-family:'Poppins',sans-serif;font-weight:700;font-size:24px;color:#2A3D36}
.thanks p{margin:0;font-size:15px;line-height:1.9;color:rgba(42,61,54,.86)}
.thanks p + p{margin-top:10px}
.form-panel.sent .form-body{display:none}
.form-panel.sent .thanks{display:block}
.tick{width:52px;height:52px;border-radius:50%;background:var(--optics-badge);color:#EAF6DE;
  display:flex;align-items:center;justify-content:center;margin-bottom:22px}
.tick svg{width:24px;height:24px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.aside{display:grid;gap:20px}
.abox{background:var(--panel);border-radius:20px;padding:28px 26px;color:#fff;
  box-shadow:0 18px 40px -18px rgba(0,0,0,.5)}
.abox h3{margin:0 0 12px;font-family:'Poppins',sans-serif;font-weight:600;font-size:15px;color:var(--pill)}
.abox p,.abox address{margin:0;font-style:normal;font-size:14px;line-height:1.85;color:rgba(255,255,255,.82)}
.abox a{border-bottom:1px solid rgba(255,255,255,.3)}
.abox a:hover{border-bottom-color:var(--pill);color:var(--pill)}
.abox .links{display:flex;gap:16px;margin-top:12px;flex-wrap:wrap}
.abox .links a{border:0;font-weight:600;color:var(--pill)}

/* ---------- footer ---------- */
.foot{background:var(--footer);padding:66px 0 34px;position:relative;z-index:2}
.foot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:38px}
.foot h2{margin:0 0 16px;font-family:'Poppins',sans-serif;font-weight:600;font-size:13px;
  letter-spacing:.06em;text-transform:uppercase;color:var(--pill)}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.foot ul a{font-size:14px;color:var(--footer-ink);transition:color .2s}
.foot ul a:hover{color:var(--cream)}
.foot-base{margin-top:52px;padding-top:26px;border-top:1px solid rgba(255,255,255,.10);
  font-size:13px;color:var(--footer-ink)}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .collage{display:none}
  .hero{min-height:auto}
  .hero-copy{padding:150px 0 80px;max-width:none}
  .pillars{grid-template-columns:repeat(2,1fr);gap:40px 0}
  .pillar:nth-child(3){border-left:0;padding-left:0}
  .cards{grid-template-columns:1fr 1fr}
  .values{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr;gap:32px}
}
@media (max-width:760px){
  .nav{
    position:absolute;top:calc(100% + 14px);left:40px;right:40px;
    flex-direction:column;align-items:stretch;gap:4px;padding:12px;
    background:rgba(12,48,36,.97);border-radius:16px;
    box-shadow:0 20px 44px -18px rgba(0,0,0,.6);display:none;
  }
  .nav.open{display:flex}
  .nav a{padding:12px 16px;font-size:15px}
  .navtoggle{display:flex}
  .steps{grid-template-columns:1fr;gap:22px}
  .duo{grid-template-columns:1fr}
  .feat,.plain{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
}
@media (max-width:620px){
  .wrap{padding:0 22px}
  .topbar{padding-top:22px}
  .logo{width:108px;height:28px}
  .nav{left:22px;right:22px}
  .pillars{grid-template-columns:1fr}
  .pillar{border-left:0;padding:0}
  .cards,.values{grid-template-columns:1fr}
  .panel{padding:40px 26px}
  .pcard{padding:36px 26px 40px}
  .cream-panel{padding:36px 26px}
  .form-panel{padding:32px 24px 36px}
  .phead-in{padding:130px 0 70px}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
:focus-visible{outline:2px solid var(--pill);outline-offset:3px;border-radius:4px}
