@font-face{font-family:Manrope;src:url("../fonts/manrope-variable.946beb949095.ttf") format("truetype");font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url("../fonts/barlow-condensed-light.4cdaa97a88d2.ttf") format("truetype");font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:Caveat;src:url("../fonts/caveat-regular.c4c37b68e529.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}

:root{color-scheme:dark;--bg:#071017;--surface:#111c23;--text:#f1f1ff;--muted:#c5cddb;--blue:#368cff;--line:#233440;--wrap:89.1%;font-size:clamp(14px,1.5625vw,20px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:1.25rem}
body{margin:0;background:var(--bg);color:var(--text);font-family:Manrope,Arial,sans-serif;font-size:.75rem;line-height:1.5;-webkit-font-smoothing:antialiased}
button,a,input{touch-action:manipulation}
button{font:inherit;cursor:pointer}
a{color:inherit;text-decoration:none}
button{color:inherit}
button,figure,blockquote,p,h1,h2,h3,ul,ol{margin:0}
button{border:0}
ul,ol{padding:0;list-style:none}
img{max-width:100%;display:block}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,dialog:focus-visible{outline:2px solid #8bc8ff;outline-offset:5px}
button:disabled{cursor:default;opacity:.5}
::selection{background:#246bba;color:white}
[hidden]{display:none!important}
.wrap{width:var(--wrap);max-width:80rem;margin-inline:auto}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.landing-skip{position:fixed;top:.6rem;left:.6rem;z-index:100;background:white;color:#071017;padding:.7rem 1rem;border-radius:.25rem;transform:translateY(-180%)}
.landing-skip:focus{transform:translateY(0)}
.line-icon{display:block;width:1.4rem;height:1.4rem;flex-shrink:0}
.eyebrow{text-transform:uppercase;letter-spacing:.11rem;font-size:.55rem;line-height:1.5;font-weight:500;color:#a7d3ff}
h1,h2,h3{font-weight:750;letter-spacing:-.045rem;line-height:1.2}
h2{font-size:1.37rem}
.button{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;min-height:2.4rem;padding:.58rem 1rem;border:1px solid transparent;border-radius:.32rem;font-weight:650;font-size:.68rem;line-height:1.3;white-space:nowrap;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
.button .line-icon{width:1rem;height:1rem}
.button-primary{background:linear-gradient(115deg,#1766ce,#236fd2);border-color:#589cff;box-shadow:inset 0 0 .5rem #60a3ff20,0 .15rem .8rem #0002;color:#fff}
.button-primary:hover{background:#2264bc;border-color:#8cc4ff;box-shadow:0 .3rem 1.1rem #1677ff30;transform:translateY(-1px)}
.button-outline{background:#06101850;border-color:#82b4e7;color:#f5f6ff;min-width:8.5rem}
.button-outline:hover{background:#1c354b;border-color:#b2d8ff}
.hero-shell{position:relative;isolation:isolate;min-height:24.55rem;overflow:hidden;background:#061019}
.hero-photograph{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.77)}
.hero-shell::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#050e1580 0%,#050d1550 36%,transparent 63%),linear-gradient(0deg,#06101765,transparent 24%);pointer-events:none}
.site-header{position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:10;display:flex;align-items:center;height:4.3rem;gap:1.5rem}
.riqelo-brand{display:inline-flex;align-items:center;gap:.7rem;flex-shrink:0}
.main-nav{display:flex;align-items:center;gap:1.85rem;margin-left:5.3rem;height:3.3rem;align-self:flex-start}
.main-nav a{display:flex;align-items:center;height:3rem;position:relative;font-size:.64rem;font-weight:600;white-space:nowrap;transition:color .18s}
.main-nav a::after{position:absolute;content:"";height:.17rem;border-radius:1px;left:0;right:0;bottom:.04rem;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .18s}
.main-nav a.is-active::after{transform:scaleX(1)}
.main-nav a:hover,.footer-nav a:hover{color:#7bb8ff}
.menu-toggle{display:none}
.hero{position:relative;display:grid;grid-template-columns:minmax(0,38rem) minmax(0,13rem);justify-content:space-between;align-items:start;column-gap:2rem;padding-top:5.13rem;padding-bottom:1.575rem}
.hero-copy{position:relative;z-index:1;min-width:0;max-width:38rem}
.hero-copy>.eyebrow{font-size:.52rem;letter-spacing:.095rem;color:#cad4e8;margin-bottom:.54rem}
.hero h1{font-size:2.75rem;letter-spacing:-.04rem;line-height:1.08;font-weight:800}
.hero h1 span{color:var(--blue)}
.hero-description{font-size:.86rem;line-height:1.34;max-width:25rem;letter-spacing:.005rem;margin-top:.7rem;color:#e4e8f4}
.hero-actions{display:flex;flex-wrap:wrap;gap:1.1rem;align-items:center;margin-top:.85rem}
.hero-actions .button,.first-talk .button{white-space:normal;text-align:center;max-width:100%}
.hero-actions .line-icon,.first-talk .line-icon{flex-shrink:0}
.hero-scope{max-width:31rem;margin-top:1.2rem;color:#d4dbea;font-size:.8rem;line-height:1.65}
.hero-benefits{display:flex;gap:1.7rem;margin-top:1.55rem;max-width:39rem}
.hero-benefits li{display:flex;align-items:center;gap:.7rem}
.hero-benefits .line-icon{color:var(--blue);width:2.2rem;height:2.2rem;stroke-width:1.5}
.hero-benefits strong{display:block;font-size:.64rem;line-height:1.6;font-weight:700}
.hero-benefits li span{display:block;font-size:.57rem;white-space:nowrap;color:#d4dbea;line-height:1.5}
.rack-note{min-width:0;margin-top:1rem;font-family:Manrope,Arial,sans-serif;text-transform:uppercase;color:#64b7ff;letter-spacing:.06em;font-size:clamp(13px,1vw,18px);line-height:1.65;font-weight:500;white-space:normal;overflow-wrap:anywhere}
.rack-note span{display:block}
.rack-note .rack-note-last{margin-top:.55rem}
.rack-note i{display:block;margin-top:1.1rem;background:#65b7ff;width:1.4rem;height:1px}
.hero-signature{position:absolute;top:18.6rem;left:88%;font-family:Caveat,cursive;font-size:1.8rem;line-height:.88;white-space:nowrap;color:#bdc8eb;transform:rotate(-12deg);font-weight:400}
.hero-signature span{margin-left:.3rem}
.section{position:relative;scroll-margin-top:1rem}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem}
.section-heading .eyebrow{margin-bottom:.27rem}
.services{background:radial-gradient(ellipse at 68% 20%,#16232b60,transparent 65%),#0e171d;padding:1.5rem 0 1.05rem}
.services-heading{margin-bottom:1.2rem;align-items:center;gap:3rem}
.services-heading h2{font-size:1.56rem;white-space:nowrap;letter-spacing:-.055rem}
.services-heading>p{max-width:24rem;font-size:.65rem;line-height:1.5;color:var(--muted);padding-top:.25rem}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;align-items:stretch}
.service-card{display:grid;grid-template-columns:2.1rem minmax(0,1fr);text-align:left;gap:1rem;padding:1.1rem;min-width:0;background:linear-gradient(120deg,#14212a85,#17222a55);border:1px solid #293b47;border-radius:.5rem;width:100%}
.service-card>.line-icon{width:2.1rem;height:2.1rem;stroke-width:1.6;color:var(--blue);margin-top:.1rem}
.service-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.service-copy>strong{display:block;font-size:clamp(14px,.8rem,16px);font-weight:750;letter-spacing:-.015rem;line-height:1.4;margin-bottom:.4rem;overflow-wrap:anywhere}
.service-copy>span{display:block;font-size:clamp(12.5px,.68rem,14px);line-height:1.6;color:#cbd2df;overflow-wrap:anywhere}
.about{background:#081118;padding:.1rem 0 1.14rem;overflow:hidden}
.about-main{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;min-height:13.6rem;gap:1rem}
.about-background{position:absolute;z-index:-2;top:0;bottom:0;left:39%;width:41%;overflow:hidden;mask-image:linear-gradient(90deg,transparent,black 14%,black 83%,transparent)}
.about-background img{width:100%;height:100%;object-fit:cover;object-position:54% 15%}
.about-main::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#081118 5%,#08111808 54%,transparent 72%,#081118 86%);pointer-events:none}
.about-copy{max-width:47%;padding-top:.12rem}
.about-copy .eyebrow{margin-bottom:.3rem}
.about-copy h2{font-size:1.38rem;letter-spacing:-.045rem;white-space:nowrap}
.about-copy>p:not(.eyebrow){font-size:.73rem;line-height:1.42;max-width:26rem;margin-top:.75rem;color:#e2e6f0}
.about-copy .button{margin-top:.8rem;min-width:9.35rem}
.founder-quote{position:relative;width:21.3%;padding:2.5rem 1.28rem .85rem;border:1px solid #334351;border-radius:.34rem;background:linear-gradient(120deg,#0c151d90,#0c151da6);margin-top:.1rem}
.quote-mark{position:absolute;top:.22rem;left:1rem;color:#49617e;font:3.5rem Georgia,serif;line-height:1}
.founder-quote blockquote{font-size:.73rem;line-height:1.43}
.founder-quote figcaption{display:flex;flex-direction:column;text-align:right;margin-top:.25rem}
.signature{font-family:Caveat,cursive;font-size:2rem;line-height:1.05;transform:rotate(-8deg);padding-right:.1rem;color:#e2e6f8}
.stats{display:grid;grid-template-columns:repeat(4,1fr);background:linear-gradient(100deg,#111d25a0,#15202970);border:1px solid #23303b;border-radius:.32rem;padding:.75rem 0;min-height:3.8rem}
.stats li{display:flex;gap:1.6rem;align-items:center;padding:0 1rem;position:relative}
.stats li+li{border-left:1px solid #21313d}
.stats .line-icon{height:1.9rem;width:1.9rem;color:var(--blue);stroke-width:1.5}
.stats li::after{content:"";width:1px;height:1.9rem;position:absolute;left:3.8rem;top:50%;transform:translateY(-50%);background:#1d2c36}
.stats strong{display:block;font-size:.97rem;line-height:1.15;font-weight:800}
.stats strong.stat-word{font-size:.75rem;font-weight:750;line-height:1.4}
.stats li span{display:block;color:#c4cedd;font-size:.65rem;white-space:nowrap;line-height:1.5}
.process{background:#101920;padding:1.36rem 0 .65rem}
.process-layout{display:block}
.process-heading .eyebrow{color:#c6d2e2;font-size:.5rem;margin-bottom:.42rem}
.process-heading h2{font-size:1.35rem;white-space:nowrap;letter-spacing:-.035rem}
.process-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.45rem;margin-top:1.5rem}
.step-number{display:grid;place-items:center;background:#213445;color:#81beff;border-radius:50%;height:1.8rem;width:1.8rem;font-size:.94rem;font-weight:700;margin-bottom:.42rem;margin-left:-.15rem}
.process-steps h3{font-size:.74rem;line-height:1.4;font-weight:750;letter-spacing:-.02rem;margin-bottom:.5rem}
.process-steps p{font-size:.68rem;line-height:1.48;color:#cbd2df}
.testimonials{background:#081117;padding:1.05rem 0 .875rem}
.reviews-heading{margin-bottom:.62rem;gap:1rem}
.reviews-heading .eyebrow{font-size:.5rem;letter-spacing:.13rem;color:#c6d4e9;margin-bottom:.24rem}
.reviews-heading h2{font-size:1.36rem;letter-spacing:-.04rem}
.review-controls{display:flex;gap:.5rem;padding-bottom:.15rem}
.round-button{display:grid;place-items:center;width:1.95rem;height:1.95rem;border:1px solid #2b3e4d;border-radius:50%;background:transparent;transition:background .18s,border-color .18s}
.round-button .line-icon{height:1.05rem;width:1.05rem}
.round-button:hover{background:#213445;border-color:#6585a4}
.round-button:disabled{opacity:.35;cursor:default;background:transparent;border-color:#2b3e4d}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.review-card{display:flex;flex-direction:column;min-height:7.45rem;border:1px solid #22333f;background:linear-gradient(120deg,#16222b90,#131e2680);border-radius:.35rem;padding:1rem 1.08rem .75rem}
.review-card blockquote{font-size:.74rem;line-height:1.44;letter-spacing:.002rem;margin-bottom:.75rem;white-space:pre-line;overflow-wrap:anywhere}
.review-card figcaption{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-top:auto}
.review-card figcaption strong{display:block;font-size:.61rem;font-weight:800;line-height:1.4}
.review-card figcaption div{min-width:0;overflow-wrap:anywhere}
.review-card figcaption div>span{display:block;font-size:.58rem;color:#b8c5d6;line-height:1.4}
.stars{color:#ffc568;font-size:1rem;line-height:1;letter-spacing:.1rem;white-space:nowrap}
.star-empty{color:#65788d}
.reviews-empty{padding:1.2rem;border:1px solid #22333f;border-radius:.35rem;background:#131e2680;color:#cbd2df}
.reviews-empty p{font-size:.8rem;line-height:1.6}
.reviews-empty p:first-child{font-weight:700;color:#edf1ff}
.reviews-empty .button{margin-top:.8rem}
.site-footer{padding-top:.72rem;padding-bottom:.8rem}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-bottom:.4rem}
.footer-nav{display:flex;gap:2.7rem;align-items:center;margin-left:1.5rem}
.footer-nav a{font-size:.62rem;font-weight:500;white-space:nowrap;transition:color .18s}
.social-links{display:flex;gap:1.15rem;align-items:center}
.social-links button{padding:0;background:transparent;color:#dde4fd;display:grid;place-items:center;width:1.1rem;height:1.8rem}
.social-links .line-icon{width:1rem;height:1rem;stroke-width:1.5}
.social-links button:hover{color:var(--blue)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #22333e;padding-top:.76rem;gap:1rem;color:#acbbcd;font-size:.58rem}
.footer-legal{display:flex;gap:1.4rem}
.footer-legal a:hover,.footer-legal a[aria-current="page"]{color:#e5ecff}
.legal-layout{display:flex;flex-direction:column;min-height:100svh;background:radial-gradient(ellipse at 85% 0%,#17324b55,transparent 50%),var(--bg)}
.legal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.25rem;border-bottom:1px solid var(--line)}
.legal-home{display:inline-flex;align-items:center;gap:.5rem;color:#a7d3ff;font-size:.75rem}
.legal-home:hover{color:#fff}
.legal-home .line-icon{width:1rem;height:1rem}
.legal-main{flex:1;padding-block:3rem 4rem}
.legal-heading{margin-bottom:2rem}
.legal-heading h1{margin-top:.5rem;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.04em;overflow-wrap:anywhere}
.legal-columns{display:grid;grid-template-columns:12rem minmax(0,1fr);gap:2rem;align-items:start}
.legal-nav{display:grid;gap:.35rem}
.legal-nav a{min-width:0;overflow-wrap:anywhere;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid transparent;border-radius:.4rem;color:var(--muted);font-size:.8rem}
.legal-nav a:hover{background:#142433;color:#fff}
.legal-nav a[aria-current="page"]{background:#132d46;border-color:#2d5480;color:#b4d8ff}
.legal-nav .line-icon{width:.9rem;height:.9rem}
.legal-content{padding:clamp(1.25rem,3vw,2.25rem);border:1px solid var(--line);border-radius:.6rem;background:#101c26;overflow-wrap:anywhere}
.legal-content section+section{margin-top:2rem;padding-top:1.75rem;border-top:1px solid var(--line)}
.legal-content h2{font-size:1.15rem;letter-spacing:-.02em}
.legal-content p{margin-top:.85rem;color:var(--muted);font-size:.85rem;line-height:1.8;max-width:68ch}
.legal-content a{color:#a7d3ff;text-decoration:underline;text-underline-offset:.2rem}
.legal-content a:hover{color:#fff}
@media(max-width:760px){
  .legal-header{flex-wrap:wrap}
  .legal-main{padding-block:2rem 3rem}
  .legal-columns{grid-template-columns:1fr;gap:1.25rem}
  .legal-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .legal-nav a{padding:.75rem .65rem;gap:.3rem}
}
.site-dialog{width:min(31rem,calc(100% - 2rem));max-height:calc(100dvh - 3rem);padding:2.8rem 2.3rem 2.1rem;margin:auto;overflow:auto;border:1px solid #36516b;border-radius:.6rem;background:#101d28;color:var(--text);box-shadow:0 1.5rem 6rem #0008}
.site-dialog::backdrop{background:#03090ed4;backdrop-filter:blur(5px)}
.dialog-close{position:absolute;top:.8rem;right:.8rem}
.site-dialog h2{font-size:1.65rem;line-height:1.2;margin:.45rem 0 1rem;max-width:24rem}
.site-dialog>p:not(.eyebrow){font-size:.86rem;line-height:1.65;color:#cbd8e8;margin-top:.8rem}
.site-dialog .button{margin-top:1.4rem;font-size:.8rem;min-height:2.7rem}
.site-dialog a:not(.button){color:#91c5ff;text-decoration:underline;text-underline-offset:.2rem;overflow-wrap:anywhere}
.dialog-email{display:block;margin-top:1rem;font-size:.78rem}
body:has(dialog[open]){overflow:hidden}
.review-write{margin-top:1rem}
.review-dialog,.contact-dialog{width:min(46rem,calc(100% - 2rem));padding:1.8rem 2rem}
.review-page{max-width:50rem;padding-block:2rem 4rem}
.review-back{display:inline-flex;align-items:center;gap:.6rem;color:#a7d3ff;margin-bottom:1.4rem}
.review-page-card{padding:2rem;border:1px solid #36516b;border-radius:.6rem;background:#101d28}
:is([data-review-content],[data-contact-content]) h2{font-size:1.65rem;line-height:1.2;max-width:none;margin:.4rem 0 .5rem;letter-spacing:-.04em;overflow-wrap:anywhere}
:is([data-review-content],[data-contact-content]) h2:focus{outline:none}
.review-intro{font-size:.8rem;line-height:1.5;color:#cbd8e8;overflow-wrap:anywhere}
:is([data-review-content],[data-contact-content])>.button{margin-top:1.4rem;white-space:normal}
.review-step{font-size:.65rem;color:#98caff;margin:.6rem 0}
.review-form{margin-top:1rem}
.review-details{display:grid;grid-template-columns:1fr 1fr;column-gap:1.25rem}
.review-field{margin-bottom:.75rem;min-width:0}
.review-field>label,.review-rating legend{display:block;color:#edf1ff;font-size:.72rem;font-weight:650;margin-bottom:.3rem}
.review-field input,.review-field textarea,.review-field select{display:block;width:100%;min-height:2.3rem;padding:.5rem .7rem;border:1px solid #36516b;border-radius:.3rem;background:#09151f;color:#edf1ff;font:inherit;font-size:max(16px,.8rem);line-height:1.4}
.review-field textarea{resize:vertical;min-height:5rem}
.review-field textarea::placeholder{color:#8396ac}
.review-field :is(input,textarea,select):focus-visible{outline:2px solid #8bc8ff;outline-offset:2px}
.review-field [aria-invalid="true"]{border-color:#ef998b}
.review-help{font-size:.65rem;color:#b3c2d6;line-height:1.5;margin-top:.3rem}
.review-form .errorlist{color:#ffb6a9;font-size:.74rem;line-height:1.5;margin-top:.4rem;overflow-wrap:anywhere}
.review-form-errors{border:1px solid #a96460;border-radius:.3rem;padding:.65rem;margin-bottom:.75rem;background:#702f292b;color:#ffcec4}
.review-form-errors p{font-size:.8rem;font-weight:650}
.review-rating{border:0;padding:0;margin:0 0 .75rem;min-width:0}
.review-rating-options{display:flex;width:max-content;max-width:100%;gap:.1rem}
.review-rating-option{position:relative;display:flex;align-items:center;justify-content:center;width:2.2rem;min-height:2.3rem;border:0;background:none;color:#71869b;cursor:pointer;font-size:1.45rem;transition:color .15s,text-shadow .15s}
.review-rating-option input{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
.review-rating-options:has(input:checked) .review-rating-option{color:#ffc568}
.review-rating-option:has(input:checked)~.review-rating-option{color:#71869b}
.review-rating-option:has(input:focus-visible){outline:2px solid #8bc8ff;outline-offset:0;border-radius:.2rem}
@media(hover:hover){
  .review-rating-options:has(.review-rating-option:hover) .review-rating-option{color:#ffc568;text-shadow:0 0 .65rem #ffbb5260}
  .review-rating-options .review-rating-option:hover~.review-rating-option{color:#71869b;text-shadow:none}
}
.review-form-footer{display:flex;gap:1.5rem;align-items:center;margin-top:.7rem}
.review-form-footer .review-help{flex:1;margin:0}
.review-form .review-submit{margin:0;font-size:.8rem;min-height:2.6rem;white-space:normal;flex-shrink:0}
.review-form [type="submit"]:disabled{opacity:.65;cursor:wait}
.review-confirm-form{max-width:29rem;margin-block:1.5rem}
.review-field .review-code-input{max-width:18rem;letter-spacing:.35em;font-size:1.5rem;font-variant-numeric:tabular-nums}
.review-confirm-form .review-help{margin-top:.8rem}
.review-restart{display:inline-block;font-size:.72rem;line-height:1.5}
.review-connection-error{color:#ffcec4;font-size:.8rem;margin-top:.75rem}
@media(max-width:600px){
  .review-details{grid-template-columns:1fr}
  .review-form-footer{align-items:stretch;flex-direction:column;gap:.8rem}
  :is([data-review-content],[data-contact-content]) h2{font-size:1.4rem}
  .review-page-card{padding:1.25rem}
  .review-rating-option{width:44px;min-height:44px}
}


@media(min-width:1440px){.hero-shell{min-height:25.2rem}.hero{padding-top:5.4rem}.main-nav{margin-left:auto}.hero-signature{left:88.5%}.about-background{left:38%;width:44%}}
@media(max-width:1100px) and (min-width:761px){.main-nav{margin-left:5.3rem;gap:1.7rem}.site-header{width:94.6%;padding-left:2.75%}.services-heading{gap:2rem}.services-heading>p{max-width:24rem}.footer-nav{gap:2.5rem;margin-left:.7rem}}
@media(max-width:900px){
  :root{font-size:16px;--wrap:89%}
  html{scroll-padding-top:1rem}
  body{font-size:.88rem}
  .hero-shell{min-height:0}
  .hero-photograph{object-position:60% center;opacity:.7}
  .hero-shell::after{background:linear-gradient(90deg,#061019ee,#061019b3 65%,#06101966),linear-gradient(0deg,#071017,transparent 35%)}
  .site-header{height:5.4rem;gap:1rem}
  .menu-toggle{display:grid;place-items:center;position:relative;z-index:12;margin-left:auto;width:2.65rem;height:2.65rem;background:#152637cc;border:1px solid #354c62;border-radius:.3rem}
  .menu-toggle .line-icon{width:1.45rem;height:1.45rem}
  .main-nav{display:none;position:absolute;left:0;right:0;top:4.75rem;height:auto;margin:0;background:#0c1926;border:1px solid #2d465f;border-radius:.4rem;box-shadow:0 1rem 2rem #0008;padding:.4rem 1rem;gap:0;flex-direction:column;align-items:stretch}
  .main-nav.is-open{display:flex}
  .main-nav a{font-size:.9rem;height:3rem}
  .main-nav a::after{right:auto;width:1.3rem;bottom:.35rem}
  .hero{grid-template-columns:minmax(0,1fr);padding-top:6.5rem;padding-bottom:2rem}
  .hero-copy{max-width:34rem}
  .hero-copy>.eyebrow{font-size:.52rem;letter-spacing:.073rem;margin-bottom:.9rem;max-width:22rem;line-height:1.8}
  .hero h1{font-size:clamp(2.55rem,7vw,3.4rem);line-height:1.05;letter-spacing:-.08rem}
  .hero-description{font-size:.87rem;line-height:1.65;max-width:29rem;margin-top:1.05rem}
  .hero-actions{margin-top:1.25rem;gap:.7rem;flex-wrap:wrap}
  .button{font-size:.73rem;min-height:2.9rem;padding-inline:1.1rem;gap:.6rem}
  .button-outline{min-width:0}
  .hero-benefits{gap:1.25rem;margin-top:1.7rem;flex-wrap:wrap}
  .hero-benefits li{gap:.5rem}
  .hero-benefits .line-icon{width:1.9rem;height:1.9rem}
  .hero-benefits strong{font-size:.67rem}
  .hero-benefits li span{font-size:.58rem}
  .rack-note,.hero-signature{display:none}
  h2{font-size:1.5rem;letter-spacing:-.05rem;line-height:1.25}
  .eyebrow{font-size:.61rem}
  .services{padding:2rem 0}
  .services-heading{display:block;margin-bottom:1.25rem}
  .services-heading h2{font-size:1.6rem;white-space:normal;max-width:30rem}
  .services-heading>p{font-size:.79rem;line-height:1.7;max-width:35rem;margin-top:.8rem}
  .service-card{padding:1.1rem;gap:.85rem;grid-template-columns:2rem minmax(0,1fr)}
  .service-card>.line-icon{width:2rem;height:2rem;margin:0}
  .service-copy>strong{font-size:.88rem;line-height:1.45}
  .service-copy>span{font-size:.8rem;line-height:1.6}
  .about{padding:1.8rem 0}
  .about-main{display:grid;grid-template-columns:1fr 1fr;min-height:0;gap:1.5rem}
  .about-copy{grid-column:1/-1;max-width:100%;padding:0}
  .about-copy h2{white-space:normal;font-size:1.55rem;max-width:28rem}
  .about-copy>p:not(.eyebrow){font-size:.82rem;line-height:1.7;max-width:35rem}
  .about-copy .button{margin-top:1.1rem}
  .about-main::after{display:none}
  .about-background{position:relative;grid-column:1;grid-row:2;z-index:0;left:auto;top:auto;bottom:auto;width:100%;height:14rem;mask-image:linear-gradient(0deg,transparent,black 12%,black 90%,transparent);margin-top:0}
  .about-background img{object-position:54% 10%;height:100%;object-fit:cover}
  .founder-quote{grid-column:2;grid-row:2;width:100%;padding:2.7rem 1rem 1rem;margin:0;align-self:center}
  .founder-quote blockquote{font-size:.77rem;line-height:1.6}
  .stats{grid-template-columns:repeat(2,1fr);gap:0;margin-top:1.25rem;padding:0}
  .stats li{padding:1rem .7rem;gap:1.1rem}
  .stats li::after{display:none}
  .stats li:nth-child(3){border-left:0}
  .stats li:nth-child(n+3){border-top:1px solid #21313d}
  .stats .line-icon{width:1.8rem;height:1.8rem}
  .stats strong{font-size:1.1rem}
  .stats strong.stat-word{font-size:.79rem}
  .stats li span{font-size:.65rem}
  .process{padding:1.8rem 0}
  .process-layout{display:block}
  .process-heading .eyebrow{font-size:.56rem}
  .process-heading h2{white-space:normal;font-size:1.5rem}
  .process-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1.2rem;margin-top:1.5rem}
  .step-number{width:2rem;height:2rem;margin-left:0;margin-bottom:.6rem}
  .process-steps h3{font-size:.82rem;white-space:normal}
  .process-steps p{font-size:.76rem;line-height:1.65;max-width:15rem}
  .testimonials{padding:1.8rem 0}
  .reviews-heading{align-items:center;margin-bottom:1.1rem}
  .reviews-heading .eyebrow{font-size:.54rem;letter-spacing:.08rem}
  .reviews-heading h2{font-size:1.5rem;max-width:20rem}
  .review-controls{gap:.35rem;flex-shrink:0}
  .round-button{width:2.15rem;height:2.15rem}
  .review-grid{grid-template-columns:1fr}
  .review-card{padding:1.2rem;min-height:9.2rem}
  .review-card blockquote{font-size:.87rem;line-height:1.6;max-width:35rem;margin-bottom:1rem}
  .review-card figcaption strong{font-size:.73rem}
  .review-card figcaption div>span{font-size:.66rem}
  .stars{font-size:1.05rem}
  .site-footer{padding-top:1.5rem;padding-bottom:1.25rem}
  .footer-top{flex-wrap:wrap;gap:1.5rem;padding-bottom:1.4rem}
  .footer-nav{order:3;width:100%;margin:0;gap:1.2rem;flex-wrap:wrap}
  .footer-nav a{font-size:.73rem}
  .social-links{gap:.9rem}
  .social-links button{width:1.25rem;height:2rem}
  .social-links .line-icon{width:1.1rem;height:1.1rem}
  .footer-bottom{padding-top:1rem;font-size:.6rem;align-items:start}
  .footer-legal{gap:.7rem}
  .footer-legal a{display:inline-flex;align-items:center;min-height:1.5rem}
  .site-dialog{padding:3rem 1.5rem 1.7rem}
  .site-dialog h2{font-size:1.65rem}
}
@media(max-width:480px){
  .legal-nav{grid-template-columns:1fr}
  .hero-actions{gap:.65rem}
  .hero-actions .button{font-size:.67rem;padding-inline:.85rem}
  .hero-actions .button-primary{gap:.55rem}
  .hero-actions .button-outline{padding-inline:.8rem}
  .hero-benefits{display:grid;grid-template-columns:1fr 1fr;gap:1rem .65rem}
  .hero-benefits li span{white-space:normal;font-size:.57rem}
  .hero-benefits li:last-child{grid-column:1/-1}
  .service-card{padding:1rem;gap:.85rem}
  .service-card>.line-icon{width:2rem;height:2rem}
  .service-copy>strong{font-size:.88rem;margin-bottom:.4rem}
  .about-main{gap:1.2rem .6rem}
  .about-background{height:14rem;width:115%;margin-left:-10%}
  .founder-quote{padding:2.6rem .75rem .85rem}
  .founder-quote blockquote{font-size:.71rem;line-height:1.55}
  .quote-mark{left:.65rem}
  .signature{font-size:1.75rem}
  .stats li{gap:.7rem;padding:1rem .65rem}
  .stats .line-icon{width:1.55rem;height:1.55rem}
  .stats strong.stat-word{font-size:.7rem}
  .stats li span{font-size:.58rem}
  .reviews-heading h2{font-size:1.35rem}
  .review-controls{gap:.3rem}
  .round-button{width:1.9rem;height:1.9rem}
  .footer-nav{gap:.8rem 1.2rem}
  .footer-nav a{font-size:.68rem}
  .footer-top{gap:1.3rem .7rem}
  .social-links{gap:.7rem}
  .footer-bottom{flex-wrap:wrap;gap:.7rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

@media(max-width:900px){.review-dialog,.contact-dialog{padding:2.5rem 1.25rem 1.25rem}}

@media(min-width:901px){.main-nav{margin-left:auto}}

.hero-offer{margin-top:.8rem;max-width:31rem;font-size:.7rem;line-height:1.6;color:var(--muted)}
.hero-copy{max-width:38rem}
.hero h1{font-size:clamp(2.5rem,4.3vw,3.4rem);overflow-wrap:break-word}
.services-heading h2,.about-copy h2{white-space:normal}
.services-heading>div{max-width:35rem}
a.service-card{color:inherit;text-decoration:none;transition:border-color .18s,background .18s}
a.service-card:hover{border-color:#4289cd;background:#152c3d}
a.service-card:focus-visible,.project-card:focus-visible{outline:2px solid #86c4ff;outline-offset:3px}
.service-copy>.service-link{display:flex;align-items:center;gap:.5rem;margin-top:auto;padding-top:.75rem;color:#83bdff;font-weight:600;line-height:1.5}
.service-copy>.service-link>span{font-size:inherit;color:inherit;flex-shrink:0}
@media(max-width:1100px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.service-grid{grid-template-columns:1fr}}
.about-copy{max-width:60%;padding-bottom:1.5rem}
.about-copy>p:not(.eyebrow){max-width:43rem}
.about-main::after{background:linear-gradient(90deg,#081118 5%,#081118dd 42%,#08111866 62%,transparent 73%,#081118 88%)}
.about-copy .company-fact{font-size:.75rem;color:#bbcee0}
.owner-portrait{position:relative;z-index:1;width:30%;align-self:end;margin:0;flex-shrink:0}
.owner-portrait img{display:block;width:100%;height:auto;max-height:26rem;object-fit:contain;object-position:bottom}
.technology-list{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.1rem}
.technology-list span{padding:.35rem .65rem;border:1px solid #30465a;border-radius:.3rem;color:#b5d5f5;background:#122332;font-size:.7rem;line-height:1.5;overflow-wrap:anywhere}
.projects{padding:2.1rem 0;background:#101a22}
.section-intro{color:var(--muted);font-size:.85rem;line-height:1.7;margin:.7rem 0 1.4rem}
.project-grid,.case-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}
.case-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.4rem}
.project-card,.case-card{border:1px solid #2b3d4c;border-radius:.45rem;padding:1.35rem;background:#0c1822;overflow-wrap:anywhere}
.project-card{display:flex;flex-direction:column;transition:border-color .18s}
.project-card:hover{border-color:#4389cc}
.project-number{color:#69adf2;font-size:.75rem;font-weight:800;margin-bottom:1rem}
.project-card h3,.case-card h3{font-size:.98rem;line-height:1.5;margin-bottom:.7rem}
.project-card p,.case-card dd{color:var(--muted);font-size:.78rem;line-height:1.7}
.project-link{display:flex;align-items:center;gap:.6rem;color:#92c8ff;font-size:.73rem;padding-top:1.2rem;margin-top:auto}
.project-link .line-icon{width:1rem;height:1rem}
.case-card dt{font-size:.68rem;color:#9bc8f6;margin-top:1rem;font-weight:700}
.case-card dd{margin:.25rem 0 0}
.availability{position:relative;margin-top:2rem;padding-block:1.5rem;border-top:1px solid var(--line)}
.availability h2{font-size:1.2rem;margin-bottom:1.25rem}
.availability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.35rem 2rem}
.availability-grid dt{color:#9bc8f6;font-size:.72rem;font-weight:700}
.availability-grid dd{font-size:.82rem;line-height:1.7;margin:.4rem 0 0;color:var(--muted);overflow-wrap:anywhere}
.footer-nav{flex-wrap:wrap;gap:1rem 2rem}
.footer-legal{flex-wrap:wrap}
.document-nav{display:flex;gap:1.5rem;font-size:.8rem;color:#afd8ff}
.document-nav a:hover{color:#fff}
.service-page{flex:1;padding-block:2rem 3rem}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:.4rem .7rem;color:var(--muted);font-size:.68rem;line-height:1.7}
.breadcrumbs a:hover{color:#afd8ff}
.service-hero{padding:3rem 0;max-width:49rem}
.service-hero h1{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.04em;line-height:1.13;margin-top:.75rem}
.service-lead{font-size:1.05rem;line-height:1.75;color:var(--muted);margin-top:1.2rem;max-width:45rem}
.service-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.service-sections>section{padding:2rem;border:1px solid var(--line);border-radius:.5rem;background:#0f1c27}
.service-sections h2,.service-faq h2,.first-talk h2{font-size:1.65rem;line-height:1.3;margin:.6rem 0 1rem}
.service-sections p:not(.eyebrow),.service-faq p,.first-talk p:not(.eyebrow){font-size:.9rem;color:var(--muted);line-height:1.8}
.service-sections p+p{margin-top:.7rem}
.deliverables{list-style:none;padding:0;display:grid;gap:.85rem;margin-top:1rem}
.deliverables li{display:flex;align-items:start;gap:.7rem;font-size:.85rem;line-height:1.7;color:var(--muted)}
.deliverables .line-icon{width:1.25rem;height:1.25rem;flex-shrink:0;color:#5da9ff;margin-top:.1rem}
.service-workflow{list-style:none;counter-reset:workflow;padding:0;display:grid;gap:1rem}
.service-workflow li{counter-increment:workflow;position:relative;padding-left:2.7rem}
.service-workflow li::before{content:counter(workflow);position:absolute;left:0;top:0;display:grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;background:#203549;color:#8cc5ff;font-size:.8rem}
.service-workflow strong,.service-workflow span{display:block;font-size:.83rem;line-height:1.7}
.service-workflow span{color:var(--muted);margin-top:.2rem}
.service-faq{margin-block:3rem;max-width:55rem}
.service-faq details{border-bottom:1px solid var(--line);padding-block:1rem}
.service-faq summary{cursor:pointer;font-size:.95rem;line-height:1.7;font-weight:700;color:#dceaff}
.service-faq details[open] summary{color:#88c3ff}
.service-faq details p{margin:.75rem 0 .35rem}
.first-talk{display:flex;align-items:center;gap:2rem;padding:2rem;border:1px solid #30526f;background:linear-gradient(110deg,#152c40,#0d1a26);border-radius:.5rem;margin-block:2rem}
.first-talk>div{flex:1;max-width:47rem}
.first-talk .button{flex-shrink:0}
.other-services{display:flex;flex-wrap:wrap;gap:.7rem 1.4rem;padding-top:1rem}
.other-services h2{width:100%;font-size:1.1rem;margin-bottom:.3rem}
.other-services a{color:#a9cfee;font-size:.78rem;text-decoration:underline;text-underline-offset:.25rem;line-height:1.7}
.service-page{overflow-wrap:anywhere}
.legal-content address{font-style:normal;font-size:.85rem;color:var(--muted);line-height:1.8;margin-top:.85rem}
.legal-content .legal-notice{margin:0 0 1.5rem;padding:1rem;border-left:3px solid #e1b35e;background:#342d21;color:#f1dcb8}
.review-consent{margin-top:.6rem}
.review-consent label{display:flex;align-items:start;gap:.65rem;color:#b8cbdf;font-size:.67rem;line-height:1.6;cursor:pointer}
.review-consent input{width:1rem;height:1rem;flex-shrink:0;margin:.12rem 0 0;accent-color:#338aff}
.review-consent input:focus-visible{outline:2px solid #8bc8ff;outline-offset:3px}
.form-privacy{font-size:.65rem;line-height:1.6;color:var(--muted);margin-top:.6rem}
.form-privacy a{color:#a7d3ff;text-decoration:underline}
@media(max-width:1100px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.first-talk{flex-direction:column;align-items:start}.main-nav{gap:1.4rem}}
@media(max-width:900px){
  .hero-copy{max-width:36rem}.hero h1{font-size:clamp(2.3rem,6vw,3.4rem)}
  .about-copy{max-width:100%;padding:0}.owner-portrait{grid-column:2;grid-row:2;width:100%;align-self:end}
  .availability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-sections{grid-template-columns:1fr}.service-hero{padding-block:2rem}.service-sections>section{padding:1.4rem}
  .project-card,.case-card{padding:1.1rem}.service-lead{font-size:.95rem}.service-faq{margin-block:2rem}
  .review-consent label{font-size:.72rem}.form-privacy{font-size:.7rem}
}
@media(max-width:600px){
  .project-grid,.case-grid,.availability-grid{grid-template-columns:1fr}
  .first-talk{padding:1.3rem}.first-talk .button{width:100%}.document-nav{gap:1rem}
  .service-sections h2,.service-faq h2,.first-talk h2{font-size:1.4rem}.service-hero h1{font-size:2rem}
}

.public-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:24px;font-size:.8rem}.public-pagination a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:1px solid #426177;border-radius:6px;text-decoration:none;color:var(--text,#eef4ff);background:#112331}.public-pagination a:hover{background:#1a3549}.public-pagination a:focus-visible{outline:2px solid #6fb7ff;outline-offset:3px}.public-pagination span{color:var(--muted,#b8c5d6)}

.footer-bottom .contract-public-link{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;border:1px solid var(--line,#38515c);border-radius:7px;color:#85ddd3;text-decoration:none}.footer-bottom .contract-public-link:is(:hover,:focus-visible){background:#163c3e;color:#fff}
