:root{color-scheme:dark;--bg:#081114;--ink:#f3f9f6;--muted:#aabeb9;--accent:#b9fa75;--line:#29413f;font-family:Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:radial-gradient(ellipse at 85% 3%,#122f2e,transparent 38%),var(--bg);line-height:1.55}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}.wrap{width:min(1180px,calc(100% - 72px));margin:auto}.top{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:18px}.brand{display:inline-flex;align-items:center;gap:0;font-size:20px;font-weight:800;letter-spacing:-.045em;white-space:nowrap}.brand img{margin-right:10px}.brand span,.eyebrow,.social{color:var(--accent)}nav{display:flex;gap:28px;color:var(--muted);font-size:14px}.outline,.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:13px 20px;border-radius:6px;font-weight:700;font-size:14px}.outline{border:1px solid var(--line)}.button{border:1px solid transparent;background:var(--accent);color:#102016;cursor:pointer;min-height:49px}.button:hover{background:#d0ff9e;color:#102016}.button:disabled{opacity:.7;cursor:wait}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:32px;align-items:center;padding:92px 0 88px}.tag,.eyebrow,.coordinate,.readout,small,.method li>span{font:700 12px/1.4 ui-monospace,monospace;letter-spacing:.12em}.tag{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid var(--line);color:#c6e5d9;border-radius:5px}i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}h1,h2,h3,p{margin:0}h1,h2{line-height:1.02;letter-spacing:-.06em}h1{font-size:clamp(52px,7.25vw,104px);margin:20px 0}h1 em{color:var(--accent);font-style:normal}h2{font-size:clamp(40px,5vw,70px);margin:13px 0 24px}h3{font-size:22px;line-height:1.2;letter-spacing:-.035em}.intro,.method p,.contact>div>p:not(.eyebrow){color:var(--muted);max-width:440px;font-size:18px}.hero .button{margin-top:27px}.scope{position:relative;aspect-ratio:1.15;display:grid;place-items:center;overflow:hidden;border:1px solid #33534e;border-radius:12px;background:linear-gradient(90deg,#68b89a16 1px,transparent 1px),linear-gradient(#68b89a16 1px,transparent 1px),radial-gradient(#226456,#102e32 48%,#0a191e 78%);background-size:30px 30px,30px 30px,auto}.ring{width:70%;aspect-ratio:1;border:1px solid #97ecc56b;border-radius:50%;display:grid;place-items:center;outline:1px dashed #97ecc547;outline-offset:12px}.ring.inner{width:73%;outline-offset:-12px}.ring img{width:64%;filter:drop-shadow(0 0 20px #54eeb086)}.coordinate,.readout{position:absolute;color:#a1c6bb;left:18px}.coordinate{top:17px}.readout{bottom:17px}.readout i{margin-right:6px}.section{padding:66px 0;border-top:1px solid var(--line);scroll-margin-top:16px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cards article{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:23px;background:#101d20;border:1px solid var(--line);border-radius:10px}.cards small,.cards a,.method li>span{color:var(--accent)}.cards p,.method li p,footer{color:var(--muted)}.cards a{margin-top:auto;font-weight:700;font-size:14px}.method,.contact{display:grid;grid-template-columns:1fr 1.12fr;gap:45px}.method ol{list-style:none;margin:0;padding:0}.method li{display:flex;gap:20px;padding:19px 0;border-bottom:1px solid var(--line)}.method li p{font-size:15px;margin-top:7px}.social{display:inline-block;margin-top:20px}form{padding:24px;border:1px solid var(--line);background:#102024;border-radius:10px;display:grid;gap:15px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{display:grid;gap:6px;font-size:14px;font-weight:700}input,select,textarea{width:100%;min-width:0;padding:11px;border:1px solid #3b5654;border-radius:5px;background:#081518;color:var(--ink);font:inherit}textarea{resize:vertical}.consent{display:flex;align-items:flex-start;font-weight:400;color:var(--muted)}.consent input{width:16px;min-width:16px;margin:3px 3px 0 0;accent-color:var(--accent)}.trap{position:absolute;left:-10000px}.contact button{justify-self:start}#result{font-size:14px;color:var(--accent)}#result:empty{display:none}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}footer{border-top:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between;gap:14px;font-size:14px}@media(max-width:800px){.wrap{width:calc(100% - 36px)}.hero,.method,.contact{grid-template-columns:1fr;gap:28px}.hero{padding:49px 0}.scope{max-width:500px;width:100%}.section{padding:45px 0}.cards{grid-template-columns:1fr}nav{display:none}}@media(max-width:440px){.top .outline{font-size:12px;padding:9px;gap:5px}.top .brand{font-size:17px}.top .brand img{width:27px;margin-right:6px}.fields{grid-template-columns:1fr}form{padding:17px}footer{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep the small lens visible after the hero scrolls out of view. */
.masthead{position:sticky;top:0;z-index:2;background:#081114f5}
.iris{display:block}
.top .iris{width:35px;height:35px;margin-right:10px}
.ring .iris{width:64%;filter:drop-shadow(0 0 20px #54eeb086)}
.section{scroll-margin-top:102px}
@media(max-width:440px){.top .iris{width:27px;height:27px;margin-right:6px}}

.inbox{padding:52px 0;max-width:900px}
.inbox h1{font-size:clamp(42px,7vw,72px)}
.lead-list{display:grid;gap:14px;margin:30px 0}
.lead-card{padding:20px;border:1px solid var(--line);border-radius:10px;background:#102024;overflow-wrap:anywhere}
.lead-card h2{font-size:24px;margin:9px 0;letter-spacing:-.03em}
.lead-message{white-space:pre-wrap;margin-top:12px}
.lead-pagination{display:flex;gap:12px}

.pricing-intro,.pricing-note,.price-card>p:not(.eyebrow),.long-term p:not(.eyebrow){color:var(--muted)}
.pricing-intro{max-width:590px;font-size:18px}
.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:26px}
.price-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:clamp(19px,3vw,34px);border:1px solid var(--line);border-radius:12px;background:#101d20}
.price-featured{border-color:#62934e;background:radial-gradient(ellipse at 100% 0,#234232,transparent 72%),#101d20}
.price-card h3,.long-term h3{font-size:clamp(23px,3vw,31px)}
.prices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:12px;margin:5px 0 0;padding-top:14px;border-top:1px solid var(--line)}
.prices dt,.billing,.pricing-note{font-size:14px;color:var(--muted)}
.prices dd{margin:2px 0 0;font-weight:800;font-size:clamp(23px,3.3vw,41px);letter-spacing:-.05em;color:var(--ink);white-space:nowrap}
.price-featured .prices dd{color:var(--accent)}
.price-card ul{padding-left:19px;margin:5px 0 10px}
.price-card li+li{margin-top:7px}
.price-card li::marker{color:var(--accent)}
.price-card>a{margin-top:auto}
.pricing-note{margin:14px 0 22px}
.long-term{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;padding:22px;border:1px solid var(--line);border-radius:10px}
.long-term h3{margin:7px 0}
@media(max-width:720px){.pricing-grid{grid-template-columns:1fr}}

.price-from{font-size:.55em;letter-spacing:normal}

/* Keep columns shrinkable when their content is wider than the available space. */
.hero{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}
.method,.contact{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr)}
.fields{grid-template-columns:repeat(2,minmax(0,1fr))}
form,label{min-width:0}
input,select,textarea{font-size:16px}
.long-term .outline{max-width:100%;justify-content:space-between}

@media (max-width:1000px){
  .wrap{width:calc(100% - 48px)}
  .hero{gap:24px;padding:64px 0}
  .method,.contact{gap:24px}
  .top nav{gap:16px}
}
@media (min-width:701px) and (max-width:800px){
  .cards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cards article{padding:16px}
  .scope{max-width:none}
  .top nav{display:flex}
}
@media (max-width:700px){
  .wrap{width:calc(100% - 36px)}
  .top{height:68px;gap:8px}
  .top .outline{min-height:44px}
  .hero,.method,.contact{grid-template-columns:minmax(0,1fr)}
  .hero{padding:42px 0}
  .hero h1{font-size:clamp(40px,10.8vw,60px)}
  .section{scroll-margin-top:82px}
  .scope{max-width:none}
  .long-term .outline{width:100%}
}
@media (max-width:440px){
  .fields{grid-template-columns:minmax(0,1fr)}
  .contact button{width:100%}
  .prices dd{font-size:clamp(19px,6.4vw,25px)}
}

.service-page .intro{max-width:660px;margin-bottom:24px}
.service-page .section{margin-top:30px;padding:24px 0 0}
.service-page .section h2{font-size:clamp(25px,4vw,36px);margin:0 0 12px}
.service-page .section p{max-width:680px;color:var(--muted)}

.arrow-icon{display:inline-block;width:1em;height:1em;vertical-align:-.125em;flex:none}
