:root{
  --orange:#D66006;
  --orange-logo:#E76228;
  --orange-2:#F08A32;
  --orange-dark:#9E4204;
  --graphite:#313131;
  --ink:#171717;
  --ink-2:#272727;
  --muted:#696F7A;
  --soft:#F7F1EA;
  --soft-2:#FFF9F4;
  --accent-soft:#FFF4EC;
  --line:#E8DED4;
  --white:#FFFFFF;
  --black:#111111;
  --gold:#F2A400;
  --alcaprint:#359ACD;
  --radius:34px;
  --radius-sm:18px;
  --shadow:0 34px 110px rgba(23,23,23,.16);
  --shadow-soft:0 22px 58px rgba(23,23,23,.08);
  --container:min(1500px,calc(100vw - 56px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Manrope,Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--soft-2);line-height:1.65;text-rendering:optimizeLegibility}
body:before{content:"";position:fixed;inset:0;z-index:-3;background:radial-gradient(circle at 12% 8%,rgba(214,96,6,.16),transparent 25%),radial-gradient(circle at 88% 2%,rgba(23,23,23,.09),transparent 25%),linear-gradient(180deg,#fffaf6 0%,#fff 42%,#fbf7f2 100%)}
body:after{content:"";position:fixed;inset:0;z-index:-2;opacity:.32;background-image:linear-gradient(rgba(23,23,23,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,23,23,.035) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,black,transparent 68%)}
a{color:inherit}.wrap{width:var(--container);margin:0 auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:absolute;left:16px;top:-60px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:12px;z-index:200}.skip-link:focus{top:12px}.topbar{position:sticky;top:0;z-index:80;background:rgba(255,249,244,.82);backdrop-filter:blur(22px);border-bottom:1px solid rgba(232,222,212,.75);transition:box-shadow .22s ease,background .22s ease}.topbar.scrolled{box-shadow:0 16px 38px rgba(23,23,23,.08);background:rgba(255,255,255,.92)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;text-decoration:none}.brand img{width:204px;height:auto;display:block}.navlinks{display:flex;align-items:center;gap:28px;font-size:.91rem;font-weight:850;color:#363636}.navlinks a{text-decoration:none;position:relative}.navlinks a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;border-radius:10px;background:var(--orange);transition:right .22s ease}.navlinks a:hover,.navlinks a.active{color:var(--orange)}.navlinks a:hover:after,.navlinks a.active:after{right:0}.nav-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:999px;background:var(--orange);color:#fff;font-size:.9rem;font-weight:900;text-decoration:none;box-shadow:0 14px 30px rgba(214,96,6,.28);transition:transform .2s,background .2s,box-shadow .2s}.nav-cta:hover{background:var(--orange-dark);transform:translateY(-2px);box-shadow:0 18px 40px rgba(214,96,6,.36)}.burger{display:none;width:46px;height:46px;border-radius:16px;border:1px solid var(--line);background:#fff;align-items:center;justify-content:center;cursor:pointer}.burger span{width:20px;height:2px;border-radius:10px;background:var(--ink);position:relative;display:block}.burger span:before,.burger span:after{content:"";position:absolute;left:0;width:20px;height:2px;border-radius:10px;background:var(--ink);transition:.2s}.burger span:before{top:-7px}.burger span:after{top:7px}.mobile-panel{display:none}.hero{padding:94px 0 72px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(370px,.97fr);gap:62px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;padding:9px 14px;border-radius:999px;border:1px solid rgba(214,96,6,.24);background:rgba(255,242,232,.86);color:var(--orange-dark);font-weight:900;font-size:.75rem;text-transform:uppercase;letter-spacing:.11em}.eyebrow:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 7px rgba(214,96,6,.13);animation:pulse 2.2s infinite}@keyframes pulse{0%,100%{box-shadow:0 0 0 7px rgba(214,96,6,.13)}50%{box-shadow:0 0 0 12px rgba(214,96,6,.04)}}h1{margin:0 0 24px;max-width:860px;font-size:clamp(2.75rem,6vw,6.2rem);line-height:.94;letter-spacing:-.08em;font-weight:950}.page-hero h1{font-size:clamp(2.4rem,5.2vw,5.2rem);max-width:1050px}h1 .accent{color:var(--orange)}.lead{margin:0;max-width:690px;color:var(--muted);font-size:clamp(1.03rem,1.5vw,1.17rem);line-height:1.84}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 25px;border-radius:999px;text-decoration:none;font-weight:900;border:1px solid transparent;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:var(--orange);box-shadow:0 20px 44px rgba(214,96,6,.25)}.btn-primary:hover{background:var(--orange-dark)}.btn-secondary{color:var(--ink);background:#fff;border-color:var(--line);box-shadow:var(--shadow-soft)}.btn-secondary:hover{border-color:rgba(214,96,6,.36);color:var(--orange)}.btn-dark{color:#fff;background:var(--ink);box-shadow:0 20px 48px rgba(23,23,23,.22)}.trustbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:36px;color:var(--muted);font-size:.94rem}.stars{letter-spacing:2px;color:var(--gold);font-size:1rem}.trustbar strong{color:var(--ink);font-weight:900}.trust-sep{width:1px;height:18px;background:var(--line)}
.hero-art{position:relative;min-height:580px;display:flex;align-items:center;justify-content:center}.project-frame{width:min(100%,560px);border-radius:38px;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(255,246,239,.82));border:1px solid rgba(232,222,212,.95);padding:20px 20px 24px;box-shadow:var(--shadow);transform:rotate(2deg);position:relative}.project-frame:before{content:"";position:absolute;inset:28px -22px -24px 42px;border-radius:36px;background:linear-gradient(135deg,rgba(214,96,6,.13),rgba(23,23,23,.08));z-index:-1;filter:blur(1px)}.frame-bar{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 8px 14px}.frame-dots{display:flex;gap:8px}.frame-dot{width:11px;height:11px;border-radius:50%;background:#d8d2cd}.frame-dot:first-child{background:var(--orange)}.frame-title{font-size:.76rem;font-weight:950;letter-spacing:.16em;color:#7b808a;text-transform:uppercase}.project-screen{border-radius:28px;background:radial-gradient(circle at 83% 8%,rgba(214,96,6,.26),transparent 34%),linear-gradient(145deg,#171717 0%,#242424 100%);min-height:430px;color:#fff;padding:30px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.screen-kicker{color:#E8924A;font-size:.78rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}.screen-title{font-size:clamp(2.05rem,3.1vw,3rem);line-height:.98;letter-spacing:-.07em;font-weight:950;margin:0 0 14px}.screen-text{color:rgba(255,255,255,.68);font-weight:700;line-height:1.55;max-width:420px;margin:0 0 28px}.screen-pills{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.screen-pill{border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:16px;min-height:88px}.screen-pill strong{display:block;font-size:1.65rem;line-height:1;font-weight:950;letter-spacing:-.04em}.screen-pill span{display:block;margin-top:9px;color:rgba(255,255,255,.45);font-size:.78rem;font-weight:850}.screen-base{border-radius:20px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09);padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.base-line{height:10px;border-radius:999px;background:rgba(255,255,255,.18);margin-bottom:9px}.base-line:nth-child(2){width:72%}.floating-card{position:absolute;left:-20px;bottom:54px;max-width:292px;border-radius:28px;background:#fff;border:1px solid rgba(232,222,212,.9);box-shadow:0 24px 64px rgba(23,23,23,.14);padding:24px;transform:rotate(-4deg)}.floating-card h3{margin:0 0 8px;font-size:1.18rem;letter-spacing:-.03em}.floating-card p{margin:0;color:var(--muted);font-weight:700;line-height:1.55}.mini-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.mini-tags span{border-radius:999px;padding:7px 10px;background:var(--accent-soft);color:var(--orange-dark);font-size:.72rem;font-weight:950}.floating-badge{position:absolute;right:8px;top:38px;border-radius:999px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:10px 14px;font-weight:950;color:var(--ink);transform:rotate(-2deg)}.floating-badge span{color:var(--orange)}.pillars{background:var(--graphite);color:#fff}.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr)}.pillar{position:relative;padding:30px 28px;text-decoration:none;border-right:1px solid rgba(255,255,255,.08);display:flex;gap:18px;align-items:flex-start;overflow:hidden}.pillar:last-child{border-right:none}.pillar:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:3px;background:var(--orange);transition:right .25s ease}.pillar:hover{background:rgba(214,96,6,.08)}.pillar:hover:after{right:0}.pillar h3{margin:0 0 5px;font-size:1.05rem;letter-spacing:-.02em}.pillar p{margin:0;color:rgba(255,255,255,.58);font-size:.9rem}.pillar .lux-icon{flex:0 0 54px;margin:0;background:rgba(214,96,6,.14);color:#ffb579;border-color:rgba(214,96,6,.28)}.section{padding:96px 0}.section.dark{background:var(--graphite);color:#fff;position:relative;overflow:hidden}.section.dark:before{content:"";position:absolute;inset:-120px -80px auto auto;width:420px;height:420px;border-radius:50%;background:rgba(214,96,6,.17);filter:blur(10px)}.section.soft{background:rgba(247,241,234,.74)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:44px}.section-label{color:var(--orange);font-size:.78rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}.section h2{margin:0;font-size:clamp(2rem,3.7vw,3.65rem);line-height:1.03;letter-spacing:-.065em;font-weight:950}.section-desc{margin:14px 0 0;max-width:650px;color:var(--muted);font-size:1.02rem}.dark .section-label{color:#E8924A}.dark .section-desc{color:rgba(255,255,255,.62)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:rgba(255,255,255,.88);border:1px solid rgba(232,222,212,.86);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow-soft);transition:transform .22s,box-shadow .22s,border-color .22s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:rgba(214,96,6,.3)}.dark .card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);box-shadow:none}.lux-icon{width:60px;height:60px;border-radius:21px;display:grid;place-items:center;margin-bottom:23px;color:var(--orange);background:linear-gradient(145deg,#fff,#fff1e6);border:1px solid rgba(214,96,6,.18);box-shadow:0 14px 30px rgba(214,96,6,.08)}.dark .lux-icon{background:rgba(214,96,6,.12);border-color:rgba(214,96,6,.28);color:#ffaf70}.lux-icon svg{width:29px;height:29px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.card h3,.card h4{margin:0 0 10px;font-size:1.2rem;line-height:1.25;letter-spacing:-.03em}.card p{margin:0;color:var(--muted);font-size:.96rem}.dark .card p{color:rgba(255,255,255,.62)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.tag{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;background:rgba(214,96,6,.09);color:var(--orange-dark);font-size:.74rem;font-weight:950}.dark .tag{background:rgba(214,96,6,.16);color:#ffbd82}.card-link{display:inline-flex;margin-top:22px;color:var(--orange);font-weight:950;text-decoration:none}.card-link:hover{text-decoration:underline}.split{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:52px;align-items:center}.quote-box{border-radius:34px;background:#fff;border:1px solid var(--line);padding:36px;box-shadow:var(--shadow-soft)}.dark .quote-box{background:#fff;color:var(--ink)}.quote-box strong.big{font-size:3.1rem;line-height:1;color:var(--orange);font-weight:950;letter-spacing:-.08em}.quote-box p{margin:16px 0 0;color:var(--muted)}.number-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}.number{border-radius:22px;background:#fff;border:1px solid var(--line);padding:20px}.number strong{display:block;font-size:1.7rem;color:var(--ink);font-weight:950}.number span{display:block;color:var(--muted);font-size:.84rem;font-weight:850}.process{counter-reset:step}.process .card{position:relative;overflow:hidden}.process .card:before{counter-increment:step;content:"0" counter(step);position:absolute;right:20px;top:12px;font-size:4.4rem;line-height:1;font-weight:950;letter-spacing:-.08em;color:rgba(214,96,6,.085)}.portfolio-card{display:flex;flex-direction:column;overflow:hidden;padding:0}.portfolio-visual{min-height:208px;padding:22px;background:linear-gradient(135deg,#191919,#353535);position:relative;display:flex;align-items:flex-end;overflow:hidden}.portfolio-visual:before{content:"";position:absolute;inset:18px;border-radius:24px;border:1px solid rgba(255,255,255,.12);background:radial-gradient(circle at 80% 15%,rgba(214,96,6,.34),transparent 35%)}.portfolio-visual:after{content:"";position:absolute;right:-32px;top:-42px;width:160px;height:160px;border-radius:40px;border:1px solid rgba(255,255,255,.13);transform:rotate(22deg)}.browser-mini{position:absolute;left:26px;right:26px;top:28px;height:118px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:18px}.browser-mini span{display:block;height:8px;border-radius:99px;background:rgba(255,255,255,.22);margin-bottom:10px}.browser-mini span:nth-child(1){width:36%}.browser-mini span:nth-child(2){width:72%}.browser-mini span:nth-child(3){width:54%}.portfolio-label{position:relative;z-index:2;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);border-radius:999px;padding:8px 12px;font-weight:950;font-size:.75rem}.portfolio-body{padding:28px}.portfolio-meta{display:grid;gap:8px;margin:18px 0 0}.portfolio-meta div{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:8px;font-size:.83rem;color:var(--muted)}.portfolio-meta b{color:var(--ink);font-weight:950}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.filter-btn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:11px 15px;font-weight:950;color:var(--ink);cursor:pointer;transition:.2s}.filter-btn.active,.filter-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.clients-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.client-logo{min-height:96px;border:1px solid var(--line);border-radius:22px;background:#fff;display:flex;align-items:center;justify-content:center;text-align:center;padding:18px;font-weight:950;color:var(--ink);box-shadow:0 12px 28px rgba(23,23,23,.05);transition:.22s}.client-logo:hover{transform:translateY(-3px);border-color:rgba(214,96,6,.42);box-shadow:0 18px 44px rgba(214,96,6,.11)}.client-logo span{color:var(--orange)}.testimonial{position:relative}.testimonial .stars{display:block;margin-bottom:14px}.testimonial blockquote{margin:0;color:var(--muted);font-style:italic}.testimonial footer{display:flex;align-items:center;gap:12px;margin-top:22px;color:var(--ink);font-weight:950}.avatar{width:42px;height:42px;border-radius:50%;background:var(--accent-soft);color:var(--orange);display:grid;place-items:center;font-weight:950}.faq{max-width:860px}.faq-item{border:1px solid var(--line);border-radius:22px;background:#fff;margin-bottom:12px;overflow:hidden;box-shadow:0 12px 28px rgba(23,23,23,.04)}.faq-q{width:100%;padding:20px 22px;background:none;border:none;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;font:inherit;font-weight:950;cursor:pointer;color:var(--ink)}.faq-q span{width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--orange);display:grid;place-items:center;flex:0 0 28px;transition:.2s}.faq-item.open .faq-q span{transform:rotate(45deg)}.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease}.faq-a p{margin:0;padding:0 22px 20px;color:var(--muted)}.blog-card{padding:0;overflow:hidden}.blog-top{height:182px;background:linear-gradient(135deg,#fff2e8,#fff);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;position:relative}.blog-top:after{content:"";position:absolute;inset:24px;border-radius:28px;border:1px solid rgba(214,96,6,.12)}.blog-mark{width:78px;height:78px;border-radius:26px;background:#fff;display:grid;place-items:center;color:var(--orange);box-shadow:var(--shadow-soft);border:1px solid rgba(214,96,6,.14);position:relative;z-index:2}.blog-mark svg{width:35px;height:35px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}.blog-body{padding:28px}.blog-cat{color:var(--orange);font-size:.75rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase;margin-bottom:9px}.blog-body a{text-decoration:none}.blog-body a:hover{color:var(--orange)}.blog-date{font-size:.82rem;color:var(--muted);font-weight:850;margin-top:16px}.cta-band{border-radius:36px;padding:44px;background:linear-gradient(135deg,#171717,#2b2b2b);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;position:relative;overflow:hidden}.cta-band:before{content:"";position:absolute;right:-80px;top:-100px;width:300px;height:300px;border-radius:50%;background:rgba(214,96,6,.24)}.cta-band > *{position:relative}.cta-band h2{margin:0 0 12px;font-size:clamp(1.65rem,3vw,2.7rem);letter-spacing:-.055em;line-height:1.08}.cta-band p{margin:0;color:rgba(255,255,255,.64)}.page-hero{padding:74px 0 76px;position:relative;overflow:hidden}.breadcrumbs{font-size:.86rem;color:var(--muted);font-weight:850;margin-bottom:24px}.breadcrumbs a{text-decoration:none;color:var(--orange)}.service-list{display:grid;gap:16px}.service-row{display:flex;gap:18px;align-items:flex-start;padding:22px;border-radius:26px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft)}.service-row .lux-icon{flex:0 0 58px;margin:0}.service-row h3{margin:0 0 5px}.service-row p{margin:0;color:var(--muted)}.form-wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:26px;align-items:start}.contact-panel,.form-card{background:#fff;border:1px solid var(--line);border-radius:34px;box-shadow:var(--shadow-soft);padding:34px}.contact-list{display:grid;gap:14px;margin-top:28px}.contact-item{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:20px;background:var(--soft-2);border:1px solid var(--line)}.contact-item .lux-icon{width:42px;height:42px;border-radius:15px;margin:0;flex:0 0 42px}.contact-item span:not(.lux-icon){color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:8px}.field.full{grid-column:1/-1}.field label{font-weight:950;font-size:.9rem}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:18px;background:#fff;padding:15px 16px;font:inherit;color:var(--ink);outline:none;transition:.2s}.field textarea{min-height:160px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(214,96,6,.62);box-shadow:0 0 0 4px rgba(214,96,6,.1)}.footer{background:#202020;color:rgba(255,255,255,.58);padding:54px 0 24px}.footer-grid{display:grid;grid-template-columns:1.25fr .85fr .85fr 1.05fr;gap:34px}.footer .brand img{width:196px;}.footer p{margin:18px 0 0}.footer h4{margin:0 0 14px;color:#fff;font-size:.88rem;text-transform:uppercase;letter-spacing:.13em}.footer a{display:block;text-decoration:none;color:rgba(255,255,255,.62);font-weight:750;margin:8px 0}.footer a:hover{color:#fff}.badge-row{display:grid;grid-template-columns:1fr;gap:10px;margin-top:18px}.footer-badge,.footer a.footer-badge{display:flex;align-items:center;gap:12px;text-decoration:none;opacity:.75;transition:opacity .2s;margin:0}.footer-badge:hover{opacity:1}.badge-icon{flex:0 0 44px;width:44px;height:44px;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.06)}.badge-icon img{width:100%;height:100%;object-fit:contain}.badge-label{color:rgba(255,255,255,.7);font-size:.78rem;font-weight:700;line-height:1.4}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:34px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.84rem}.legal{display:flex;gap:18px;flex-wrap:wrap}.legal a{display:inline;margin:0}.address{color:rgba(255,255,255,.72)!important;font-weight:850}.badges-large{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}.badges-large img{height:74px;width:auto;border-radius:18px;box-shadow:var(--shadow-soft)}.map-card{min-height:320px;border-radius:34px;background:radial-gradient(circle at 70% 20%,rgba(214,96,6,.16),transparent 30%),linear-gradient(135deg,#fff,#fff6ee);border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:30px;display:flex;flex-direction:column;justify-content:flex-end}.map-line{height:2px;background:rgba(23,23,23,.08);margin:12px 0;border-radius:99px}.map-card h3{font-size:1.6rem;margin:0 0 8px}.dark .btn-secondary{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);box-shadow:none}.dark .btn-secondary:hover{background:#fff;color:var(--ink)}
@media(max-width:1040px){.hero-grid,.split,.form-wrap{grid-template-columns:1fr}.hero-art{min-height:auto}.floating-card{left:0;bottom:18px}.grid-3{grid-template-columns:repeat(2,1fr)}.grid-4,.clients-strip{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.cta-band{grid-template-columns:1fr}.navlinks,.nav-cta{display:none}.burger{display:flex}.mobile-panel.open{display:block;position:absolute;left:21px;right:21px;top:92px;background:#fff;border:1px solid var(--line);border-radius:28px;padding:18px;box-shadow:var(--shadow)}.mobile-panel a{display:block;text-decoration:none;font-weight:950;padding:14px 10px;border-bottom:1px solid var(--line)}.mobile-panel a:last-child{border-bottom:none}.brand img{width:188px}.nav{height:78px}}
@media(max-width:720px){.wrap{width:min(100% - 28px,1210px)}.hero{padding:64px 0 54px}h1{font-size:clamp(2.4rem,14vw,4.2rem)}.project-frame{transform:none;padding:14px}.project-screen{padding:22px;min-height:390px}.screen-pills{grid-template-columns:1fr}.screen-base{grid-template-columns:1fr}.floating-card,.floating-badge{position:relative;left:auto;right:auto;bottom:auto;top:auto;transform:none;margin-top:18px;max-width:none}.hero-art{display:block}.pillars-grid,.grid-3,.grid-2,.grid-4,.clients-strip,.footer-grid,.form-grid{grid-template-columns:1fr}.pillar{border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}.section{padding:72px 0}.section-head{display:block}.number-grid{grid-template-columns:1fr}.footer-bottom{display:block}.legal{margin-top:12px}.badges-large img{width:100%;height:auto}.brand img{width:178px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
:focus-visible{outline:3px solid rgba(214,96,6,.55);outline-offset:3px}

body:before{background:radial-gradient(circle at 12% 12%,rgba(214,96,6,.16),transparent 27%),radial-gradient(circle at 82% 5%,rgba(79,197,190,.12),transparent 22%),radial-gradient(circle at 75% 84%,rgba(117,86,255,.10),transparent 25%),linear-gradient(180deg,#fffaf6 0%,#fff 38%,#fbf7f2 100%)}
.topbar{background:rgba(255,255,255,.76);border-bottom:1px solid rgba(232,222,212,.72)}
.nav{height:90px}.navlinks{gap:22px}.navlinks a{font-size:.86rem;letter-spacing:-.01em}
.hero{padding:88px 0 92px}.hero-grid{grid-template-columns:minmax(0,.95fr) minmax(560px,1.05fr);gap:70px}.hero h1{font-size:clamp(2.4rem, 5.2vw, 5.8rem);letter-spacing:-.092em;line-height:.91}.lead{max-width:760px}.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn-ghost:hover{border-color:var(--orange);color:var(--orange);background:#fff}
.hero-art{min-height:620px}.project-frame{border-radius:54px;box-shadow:0 42px 120px rgba(23,23,23,.18);transform:rotate(1.2deg);padding:22px}.project-screen{min-height:500px;border-radius:36px;padding:40px;background:radial-gradient(circle at 82% 10%,rgba(214,96,6,.30),transparent 28%),radial-gradient(circle at 14% 86%,rgba(79,197,190,.18),transparent 28%),linear-gradient(145deg,#111,#292929)}.screen-title{font-size:clamp(2rem,3.4vw,4.2rem);line-height:.95;letter-spacing:-.065em}.screen-pills{gap:18px}.screen-pill{border-radius:24px;background:rgba(255,255,255,.08)}.screen-pill strong{font-size:1.85rem}.floating-card{border-radius:30px;box-shadow:0 30px 80px rgba(23,23,23,.15)}.floating-badge{text-transform:uppercase;letter-spacing:.14em}
.section{padding:112px 0}.section h2{font-size:clamp(2.35rem,4.2vw,5.1rem);line-height:.98;letter-spacing:-.08em}.section-desc{max-width:760px}.grid-4{grid-template-columns:repeat(4,1fr)}.card,.option-card{border-radius:34px}.bento-card:nth-child(2n){transform:translateY(18px)}.bento-card:hover{transform:translateY(8px)}
.possibilities{background:linear-gradient(180deg,#fff,#fff7ef)}.option-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:22px}.option-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:34px;position:relative;overflow:hidden}.option-card.featured{background:radial-gradient(circle at 86% 12%,rgba(214,96,6,.28),transparent 26%),linear-gradient(135deg,#171717,#303030);color:#fff}.option-card.featured p{color:rgba(255,255,255,.66)}.option-card:before{content:"";position:absolute;right:-36px;top:-48px;width:155px;height:155px;border-radius:42px;border:1px solid rgba(214,96,6,.22);transform:rotate(24deg)}.option-label{display:inline-flex;border-radius:999px;padding:8px 12px;background:rgba(214,96,6,.1);color:var(--orange);font-weight:950;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:26px}.option-card.featured .option-label{background:rgba(255,255,255,.1);color:#ffbd82}.option-card h3{font-size:clamp(1.8rem,2.7vw,3.2rem);line-height:1;margin:0 0 14px;letter-spacing:-.065em}.option-title{font-weight:950;color:var(--ink);font-size:1.1rem!important;margin-bottom:14px!important}.option-card p{color:var(--muted);margin:0 0 18px}.option-card .card-link{margin-top:20px}.option-card.featured .card-link{color:#ffbd82}.aiero-hero{padding:96px 0 106px}.aiero-hero h1{max-width:1220px;font-size:clamp(3rem,6.4vw,7.4rem);line-height:.92;letter-spacing:-.09em}.aiero-hero .lead{max-width:820px}.footer-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.footer-pill{display:inline-flex!important;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:10px 13px!important;margin:0!important;background:rgba(255,255,255,.07);font-size:.78rem}.footer-pill.muted{background:transparent}.form-note{grid-column:1/-1;color:var(--muted);font-size:.88rem;margin:0}.contact-panel .section-label + h2{font-size:clamp(1.9rem,2.8vw,3.2rem);line-height:1;letter-spacing:-.06em}
@media(max-width:1240px){.hero-grid{grid-template-columns:1fr}.hero-art{max-width:760px}.grid-4{grid-template-columns:repeat(2,1fr)}.option-grid{grid-template-columns:1fr}}
@media(max-width:720px){.section{padding:76px 0}.hero-art{min-height:auto}.project-screen{min-height:420px;padding:24px}.grid-4{grid-template-columns:1fr}.bento-card:nth-child(2n),.bento-card:hover{transform:none}.hero h1,.aiero-hero h1{font-size:clamp(2.6rem,14vw,4.3rem)}}

.topbar{background:rgba(255,255,255,.84);backdrop-filter:blur(24px);}
.nav{height:76px;gap:18px;}
.brand img{width:178px;}
.navlinks{gap:5px;padding:7px;background:rgba(255,255,255,.88);border:1px solid rgba(232,222,212,.9);border-radius:999px;box-shadow:0 14px 38px rgba(23,23,23,.07);font-size:1rem;font-weight:760;}
.navlinks a{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border-radius:999px;line-height:1.12;text-decoration:none;letter-spacing:.005em;}
.navlinks a:after{display:none;}
.navlinks a.active{background:var(--ink);color:#fff;box-shadow:0 10px 24px rgba(23,23,23,.16);}
.navlinks a:hover{background:var(--accent-soft);color:var(--orange);}
.navlinks a.active:hover{background:var(--ink);color:#fff;}
.nav-cta{min-height:48px;padding:0 26px;font-size:.96rem;font-weight:900;white-space:nowrap;}
h1,.hero h1,.aiero-hero h1{letter-spacing:-.045em;line-height:1.01;}
.section h2,.page-hero h1,.screen-title{letter-spacing:-.035em;line-height:1.06;}
.page-hero h1{max-width:820px;font-size:clamp(2.35rem,4.6vw,4.7rem);}
.lead{line-height:1.72;}
.hero{padding-top:74px;}
.hero-grid{gap:62px;}

.page-hero{padding:82px 0 76px;overflow:hidden;}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,.98fr) minmax(360px,.72fr);gap:56px;align-items:center;}
.page-copy{min-width:0;}
.page-illustration{position:relative;min-height:330px;display:flex;align-items:center;justify-content:center;}
.illu-window{width:min(100%,430px);border-radius:34px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:16px;transform:rotate(1.2deg);}
.illu-top{height:32px;display:flex;align-items:center;gap:8px;padding:0 6px 12px;}
.illu-top span{width:10px;height:10px;border-radius:50%;background:#d8d2cd;}
.illu-top span:first-child{background:var(--orange);}
.illu-body{min-height:245px;border-radius:24px;padding:28px;background:radial-gradient(circle at 83% 10%,rgba(214,96,6,.25),transparent 28%),radial-gradient(circle at 15% 90%,rgba(53,154,205,.18),transparent 30%),linear-gradient(145deg,#171717,#2d2d2d);color:#fff;}
.illu-icon{width:66px;height:66px;border-radius:24px;display:grid;place-items:center;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);color:#ffb579;margin-bottom:24px;}
.illu-icon svg{width:34px;height:34px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.illu-body strong{display:block;font-size:clamp(1.8rem,2.8vw,2.7rem);line-height:1;letter-spacing:-.045em;}
.illu-body p{color:rgba(255,255,255,.66);font-weight:750;margin:12px 0 24px;}
.illu-lines{display:grid;gap:9px;max-width:280px;}
.illu-lines span{height:9px;border-radius:999px;background:rgba(255,255,255,.18);}
.illu-lines span:nth-child(2){width:76%;}.illu-lines span:nth-child(3){width:52%;}
.illu-card{position:absolute;right:0;bottom:16px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:18px 20px;box-shadow:var(--shadow-soft);min-width:210px;}
.illu-card span{display:block;width:38px;height:6px;border-radius:999px;background:var(--orange);margin-bottom:12px;}
.illu-card b{display:block;color:var(--ink);}.illu-card small{display:block;color:var(--muted);font-weight:750;}

.service-cards .card{min-height:100%;}
.print-service{border-color:rgba(53,154,205,.32)!important;}
.print-service .lux-icon{color:var(--alcaprint);background:linear-gradient(145deg,#fff,#eef8fd);border-color:rgba(53,154,205,.24);}
.print-service .tag{color:#126e9a;background:rgba(53,154,205,.12);}
.print-service .card-link,.print-link{color:var(--alcaprint)!important;}

.quality-levels{align-items:stretch;}
.option-card{display:flex;flex-direction:column;gap:0;}
.option-card .option-icon{width:68px;height:68px;border-radius:24px;display:grid;place-items:center;margin-bottom:20px;color:var(--orange);background:var(--accent-soft);border:1px solid rgba(214,96,6,.18);}
.option-card .option-icon svg{width:36px;height:36px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.option-card.performance .option-icon{background:rgba(255,255,255,.1);color:#ffbd82;border-color:rgba(255,255,255,.18);}
.option-card.croissance .option-icon{color:#2f9f72;background:#ecfff6;border-color:rgba(47,159,114,.18);}
.option-card.fondation .option-icon{color:#6d6aa7;background:#f1f0ff;border-color:rgba(109,106,167,.18);}
.option-card h3{font-size:clamp(1.55rem,2vw,2.35rem);line-height:1.08;letter-spacing:-.035em;}
.price{font-size:1.05rem!important;font-weight:850;color:var(--ink)!important;margin:0 0 18px!important;}
.price strong{font-size:1.45em;color:var(--orange);}
.option-card.featured .price,.option-card.featured .price strong{color:#fff!important;}
.option-card ul{margin:4px 0 0;padding:0;list-style:none;display:grid;gap:10px;}
.option-card li{position:relative;padding-left:22px;color:var(--muted);font-weight:750;}
.option-card li:before{content:"";position:absolute;left:0;top:.72em;width:8px;height:8px;border-radius:50%;background:var(--orange);}
.option-card.featured li{color:rgba(255,255,255,.72);}

.testimonial-carousel{overflow:hidden;position:relative;mask-image:linear-gradient(90deg,transparent 0,black 7%,black 93%,transparent 100%);}
.testimonial-track{display:flex;gap:18px;width:max-content;animation:reviews-marquee 38s linear infinite;}
.testimonial-carousel:hover .testimonial-track{animation-play-state:paused;}
.testimonial-slide{width:360px;flex:0 0 360px;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow-soft);padding:26px;}
.testimonial-slide blockquote{margin:14px 0 22px;color:var(--muted);font-weight:650;line-height:1.6;}
.testimonial-slide footer{display:flex;align-items:center;gap:12px;color:var(--ink);font-weight:900;}
@keyframes reviews-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.social-icons{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px;}
.social-icons a{width:40px;height:40px;border-radius:14px;display:grid!important;place-items:center;margin:0!important;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:#fff!important;}
.social-icons a:hover{background:var(--orange);border-color:var(--orange);}
.social-icons svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.footer a{font-weight:500;}.footer h4{font-weight:800;}.address{font-weight:650!important;}

.portfolio-pagination{display:flex;justify-content:center;gap:10px;margin-top:34px;}
.pagination-btn{width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:900;cursor:pointer;transition:.2s;}
.pagination-btn.active,.pagination-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink);}

@media(max-width:1280px){.navlinks{font-size:.9rem}.navlinks a{padding:0 9px}.brand img{width:164px}.nav-cta{padding:0 14px}.page-hero-grid{grid-template-columns:1fr}.page-illustration{max-width:520px;justify-content:flex-start}.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1040px){.nav{height:74px}.navlinks,.nav-cta{display:none}.brand img{width:178px}.mobile-panel.open{top:84px}.page-illustration{display:none}}
@media(max-width:720px){:root{--container:min(100% - 28px,1500px)}.testimonial-slide{width:300px;flex-basis:300px}.grid-4{grid-template-columns:1fr}.option-grid{grid-template-columns:1fr}.nav{height:72px}.brand img{width:166px}h1,.hero h1,.aiero-hero h1{letter-spacing:-.035em}.section h2,.page-hero h1{letter-spacing:-.025em}}

.floating-badge{display:none;}

.brand img{width:166px;}
.navlinks{gap:5px;padding:6px;font-size:.97rem;font-weight:720;}
.navlinks a{min-height:34px;padding:0 10px;white-space:nowrap;letter-spacing:0;}
.nav-cta{min-height:48px;padding:0 26px;font-size:.96rem;font-weight:900;}
h1,.hero h1,.aiero-hero h1{letter-spacing:-.042em;}
.section h2,.page-hero h1{letter-spacing:-.032em;}
.card h3,.card h4{letter-spacing:-.015em;}
.service-cards{margin-bottom:28px;}
.print-callout{display:flex;justify-content:center;margin-top:8px;}
.print-callout a{display:flex;align-items:center;gap:16px;max-width:720px;width:100%;justify-content:center;text-decoration:none;border:1px solid rgba(53,154,205,.28);background:linear-gradient(135deg,rgba(53,154,205,.10),#fff);border-radius:28px;padding:20px 24px;box-shadow:0 16px 48px rgba(53,154,205,.12);color:var(--ink);}
.print-callout strong{display:block;font-size:1.06rem;}
.print-callout small{display:block;color:var(--muted);font-weight:750;margin-top:4px;}
.print-palette{width:58px;height:58px;border-radius:20px;display:grid;place-items:center;background:rgba(53,154,205,.12);color:#359ACD;border:1px solid rgba(53,154,205,.24);flex:0 0 58px;}
.print-palette svg{width:30px;height:30px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.option-label{font-size:1.28rem!important;letter-spacing:-.025em!important;}
.option-card .price strong{font-size:1.7rem;}
.section-difference{background:linear-gradient(180deg,#fff,#fff7ef);}
.difference-card{border-radius:34px;background:#171717;color:#fff;padding:36px;border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow);}
.difference-card strong{display:block;font-size:clamp(2rem,3.3vw,3.4rem);line-height:.98;letter-spacing:-.04em;color:#fff;}
.difference-card p{color:rgba(255,255,255,.68);font-weight:700;margin:18px 0 0;}
.pagination{display:flex;gap:10px;justify-content:center;margin-top:34px;}
.pagination-btn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 15px;font-weight:900;cursor:pointer;box-shadow:0 10px 26px rgba(23,23,23,.05);}
.pagination-btn.active,.pagination-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink);}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:120;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;box-shadow:0 18px 48px rgba(37,211,102,.34);transition:transform .2s ease,box-shadow .2s ease;}
.whatsapp-float:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 24px 58px rgba(37,211,102,.42);}
.whatsapp-float svg{width:31px;height:31px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.social-icons a{display:inline-grid!important;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);margin:0 7px 0 0!important;color:#fff!important;}
.social-icons svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}.social-icons i{font-size:1.05rem;line-height:1;}

.footer h4{font-weight:780;}
@media(max-width:1320px){.navlinks{font-size:.82rem}.brand img{width:154px}.navlinks a{padding:0 7px}.nav-cta{font-size:.8rem;padding:0 12px}}
@media(max-width:1040px){.nav{height:72px}.brand img{width:176px}.whatsapp-float{width:54px;height:54px;right:16px;bottom:16px}}

.footer-grid{gap:46px;}
.badge-row{gap:14px;margin-top:22px;}
.footer-badge,.footer a.footer-badge{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  align-items:center;
  gap:16px;
  min-height:92px;
  padding:6px 0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  opacity:1;
  transition:transform .2s ease;
}
.footer-badge:hover{
  transform:translateY(-2px);
}
.badge-icon{
  flex:0 0 72px;
  width:72px;
  height:68px;
  padding:8px;
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 28px rgba(0,0,0,.16);
}
.badge-icon img{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:none;
  opacity:1;
}
.badge-label{
  color:rgba(255,255,255,.92);
  font-size:1rem;
  font-weight:800;
  line-height:1.3;
}
@media(max-width:720px){
  .footer-grid{gap:34px;}
  .footer-badge,.footer a.footer-badge{grid-template-columns:68px minmax(0,1fr);min-height:88px;padding:12px;}
  .badge-icon{width:68px;height:64px;flex-basis:68px;}
}

.section-label{
  font-size:.98rem;
  letter-spacing:.14em;
}
.section h2{
  font-size:clamp(2.1rem,3.55vw,4.45rem);
}
.navlinks{
  gap:8px;
  font-size:1.03rem;
}
.navlinks a{
  padding:0 13px;
}
.nav{
  height:84px;
}
@media(max-width:1320px){
  .navlinks{gap:7px;font-size:.92rem;}
  .navlinks a{padding:0 9px;}
}
@media(max-width:720px){
  .section-label{font-size:.9rem;}
  .section h2{font-size:clamp(2rem,10vw,3.35rem);}
}

.trustpilot-stars{
  color:#00B67A;
}
.trustpilot-rating-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:inherit;
  text-decoration:none;
}
.trustpilot-rating-link:hover{
  color:#008F60;
}
.review-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.review-head .stars{
  margin:0;
}
.review-source{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(242,164,0,.12);
  color:#9a6500;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  white-space:nowrap;
}
.trustpilot-review .review-source{
  background:rgba(0,182,122,.12);
  color:#008F60;
}
.testimonial-slide footer span:last-child{
  display:grid;
  gap:2px;
}
.testimonial-slide footer small{
  display:block;
  color:var(--muted);
  font-size:.78rem;
  font-weight:750;
}
.reviews-head{
  align-items:center;
}
.review-controls{
  display:flex;
  gap:10px;
  flex:0 0 auto;
}
.review-arrow{
  width:48px;
  height:48px;
  border-radius:50%;
  border:1px solid var(--line);
  background:#fff;
  color:var(--ink);
  font-size:2rem;
  line-height:1;
  font-weight:500;
  cursor:pointer;
  box-shadow:0 14px 34px rgba(23,23,23,.08);
  transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease;
}
.review-arrow:hover{
  transform:translateY(-2px);
  background:var(--ink);
  border-color:var(--ink);
  color:#fff;
}
.testimonial-carousel{
  overflow:hidden;
  cursor:grab;
  touch-action:pan-y;
  mask-image:linear-gradient(90deg,transparent 0,black 5%,black 95%,transparent 100%);
}
.testimonial-carousel::-webkit-scrollbar{
  display:none;
}
.testimonial-carousel.dragging{
  cursor:grabbing;
  user-select:none;
}
.testimonial-carousel.dragging .testimonial-slide{
  pointer-events:none;
  user-select:none;
}
.testimonial-track{
  animation:none;
  width:max-content;
  will-change:transform;
  transform:translate3d(0,0,0);
}
@media(max-width:720px){
  .reviews-head{display:block;}
  .review-controls{
    margin-top:22px;
    justify-content:center;
    gap:14px;
  }
  .review-arrow{
    width:56px;
    height:56px;
    border-radius:18px;
    background:linear-gradient(135deg,var(--ink),#303030);
    border-color:rgba(255,255,255,.08);
    color:#fff;
    font-size:2.25rem;
    box-shadow:0 18px 42px rgba(23,23,23,.22);
  }
  .review-arrow:hover{
    background:var(--orange);
    border-color:var(--orange);
    color:#fff;
  }
}

.badges-large a{
  display:flex;
  align-items:center;
  justify-content:center;
  width:112px;
  height:112px;
  padding:16px;
  border-radius:18px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.badges-large a:hover{
  transform:translateY(-3px);
  border-color:rgba(214,96,6,.34);
  box-shadow:var(--shadow);
}
.badges-large a img{
  width:100%;
  height:100%;
  max-width:82px;
  max-height:82px;
  object-fit:contain;
  box-shadow:none;
  border-radius:0;
}
.custom-box strong.big{
  display:block;
  font-size:clamp(2rem,3vw,3.1rem);
  line-height:.98;
  margin-bottom:16px;
}
.custom-list{
  display:grid;
  gap:12px;
  margin:22px 0 0;
  padding:0;
  list-style:none;
}
.custom-list li{
  position:relative;
  padding-left:22px;
  color:var(--muted);
  line-height:1.55;
}
.custom-list li:before{
  content:"";
  position:absolute;
  left:0;
  top:.7em;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--orange);
  box-shadow:0 0 0 5px rgba(214,96,6,.1);
}
.custom-list strong{
  color:var(--ink);
}
.location-card{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 190px;
  gap:26px;
  align-items:center;
  justify-content:stretch;
  overflow:hidden;
  padding:34px;
}
.location-card:before{
  content:"";
  position:absolute;
  right:8%;
  bottom:8%;
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(214,96,6,.28),rgba(214,96,6,.08) 48%,transparent 70%);
  filter:blur(10px);
  pointer-events:none;
}
.location-copy,.location-portrait{
  position:relative;
  z-index:1;
}
.location-copy{
  align-self:center;
}
.location-person{
  margin:22px 0 0;
  padding:18px 0 0;
  border-top:1px solid rgba(23,23,23,.1);
}
.location-person strong{
  display:block;
  color:var(--ink);
  font-size:1.05rem;
  font-weight:950;
  letter-spacing:.02em;
}
.location-person span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-weight:800;
}
.location-cta{
  margin-top:20px;
  width:max-content;
}
.location-portrait{
  margin:0;
  aspect-ratio:1/1;
  border-radius:30px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 28px 64px rgba(23,23,23,.18),0 0 0 12px rgba(255,255,255,.42);
}
.location-portrait img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 18%;
  display:block;
}
@media(max-width:720px){
  .badges-large{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
  }
  .badges-large a{
    width:100%;
    height:auto;
    aspect-ratio:1/1;
    padding:14px;
  }
  .badges-large a img{
    width:100%;
    height:100%;
    max-width:78px;
    max-height:78px;
  }
  .location-card{
    grid-template-columns:1fr;
    padding:26px;
  }
  .location-portrait{
    max-width:220px;
    width:70%;
    justify-self:center;
    order:-1;
  }
  .location-cta{
    width:100%;
  }
}
.number-stars{
  color:var(--gold);
  font-size:.6em;
  letter-spacing:1px;
  vertical-align:middle;
  white-space:nowrap;
}
.number-link{
  display:block;
  text-decoration:none;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.number-link:hover{
  transform:translateY(-3px);
  border-color:rgba(242,164,0,.45);
  box-shadow:0 16px 34px rgba(242,164,0,.14);
}
.option-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  width:100%;
  margin-top:24px;
  padding:0 18px;
  border-radius:999px;
  background:var(--ink);
  color:#fff;
  text-decoration:none;
  font-weight:900;
  line-height:1.2;
  text-align:center;
  box-shadow:0 16px 36px rgba(23,23,23,.16);
  transition:transform .2s ease,background .2s ease,box-shadow .2s ease;
}
.option-cta:hover{
  transform:translateY(-2px);
  background:var(--orange);
  color:#fff;
  box-shadow:0 20px 44px rgba(214,96,6,.24);
}
.option-card.featured .option-cta{
  background:#fff;
  color:var(--ink);
  box-shadow:0 18px 44px rgba(0,0,0,.22);
}
.option-card.featured .option-cta:hover{
  background:var(--orange);
  color:#fff;
}
.form-status{
  display:flex;
  gap:18px;
  align-items:flex-start;
  border-radius:30px;
  padding:28px;
  border:1px solid transparent;
  box-shadow:var(--shadow-soft);
}
.contact-form-column{
  display:grid;
  gap:20px;
}
.form-status strong{
  display:block;
  color:var(--ink);
  font-size:clamp(1.35rem,2.2vw,2rem);
  line-height:1.08;
  letter-spacing:-.04em;
}
.form-status p{
  margin:10px 0 0;
  color:var(--muted);
  font-weight:750;
  line-height:1.6;
}
.form-status .btn{
  margin-top:20px;
}
.form-status-icon{
  flex:0 0 58px;
  width:58px;
  height:58px;
  border-radius:20px;
  display:grid;
  place-items:center;
}
.form-status-icon svg{
  width:30px;
  height:30px;
  stroke:currentColor;
  stroke-width:2.2;
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.form-status-success{
  background:linear-gradient(135deg,#f1fff7,#fff);
  border-color:rgba(22,128,74,.24);
}
.form-status-success .form-status-icon{
  color:#16804a;
  background:#dff8ea;
  border:1px solid rgba(22,128,74,.22);
}
.form-status-error{
  background:linear-gradient(135deg,#fff3f1,#fff);
  border-color:rgba(187,49,35,.24);
}
.form-status-error .form-status-icon{
  color:#bb3123;
  background:#ffe1dc;
  border:1px solid rgba(187,49,35,.22);
}
@media(max-width:720px){
  .form-status{
    display:block;
    padding:24px;
  }
  .form-status-icon{
    margin-bottom:18px;
  }
  .form-status .btn{
    width:100%;
  }
}
.portfolio-image{
  padding:0;
  min-height:230px;
  aspect-ratio:1200/560;
  background:#171717;
}
.portfolio-image img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  transition:transform .35s ease;
}
@media(max-width:720px){
  .portfolio-image{
    min-height:0;
    aspect-ratio:1200/560;
  }
}
.portfolio-image:before{
  inset:0;
  border-radius:0;
  border:none;
  background:linear-gradient(180deg,rgba(23,23,23,.08) 0%,rgba(23,23,23,.08) 48%,rgba(23,23,23,.72) 100%);
  z-index:1;
}
.portfolio-image:after{
  display:none;
}
.portfolio-card:hover .portfolio-image img{
  transform:scale(1.035);
}
.portfolio-image .portfolio-label{
  margin:0 0 22px 22px;
  z-index:2;
}
.portfolio-meta a{
  color:var(--ink);
  text-decoration:none;
}
.portfolio-meta a:hover,
.portfolio-site-link:hover{
  color:var(--orange);
}
.portfolio-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:22px;
}
.portfolio-actions .card-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin:0;
  padding:0 14px;
  border-radius:999px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--ink);
  text-align:center;
  text-decoration:none;
  font-size:.86rem;
}
.portfolio-actions .portfolio-project-link{
  background:var(--ink);
  border-color:var(--ink);
  color:#fff;
}
.portfolio-actions .card-link:hover{
  background:var(--orange);
  border-color:var(--orange);
  color:#fff;
}
.project-hero{
  padding:74px 0 86px;
  overflow:hidden;
}
.project-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);
  gap:58px;
  align-items:center;
}
.project-hero h1{
  font-size:clamp(2.4rem,5.4vw,5.7rem);
  line-height:.94;
  letter-spacing:-.055em;
}
.project-visual-card{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  background:#171717;
  border:1px solid rgba(232,222,212,.86);
  box-shadow:var(--shadow);
  aspect-ratio:1200/560;
}
.project-visual-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
}
.project-cover-card{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:34px;
  color:#fff;
  background:radial-gradient(circle at 80% 12%,rgba(214,96,6,.34),transparent 34%),linear-gradient(135deg,#171717,#303030);
}
.project-cover-card span{
  width:max-content;
  max-width:100%;
  border-radius:999px;
  padding:8px 12px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.16);
  font-size:.75rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.project-cover-card strong{
  display:block;
  margin-top:18px;
  font-size:clamp(2rem,4vw,3.8rem);
  line-height:1;
  letter-spacing:-.05em;
}
.project-cover-card small{
  margin-top:10px;
  color:rgba(255,255,255,.64);
  font-size:1rem;
  font-weight:850;
}
.project-overview{
  display:grid;
  grid-template-columns:minmax(0,1fr) 390px;
  gap:34px;
  align-items:start;
}
.project-story{
  max-width:880px;
}
.project-story p{
  margin:18px 0 0;
  color:var(--muted);
  font-weight:700;
  line-height:1.75;
}
.project-facts{
  display:grid;
  gap:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:30px;
  background:#fff;
  box-shadow:var(--shadow-soft);
}
.project-facts div{
  display:grid;
  gap:5px;
  padding:18px 22px;
  border-bottom:1px solid var(--line);
}
.project-facts div:last-child{
  border-bottom:0;
}
.project-facts span{
  color:var(--muted);
  font-size:.78rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.project-facts strong{
  color:var(--ink);
  font-size:1rem;
  line-height:1.35;
}
.project-facts a{
  color:var(--orange);
  text-decoration:none;
}
.project-content-grid{
  align-items:stretch;
}
.project-detail-card{
  box-shadow:var(--shadow-soft);
}
.project-detail-card h2{
  font-size:clamp(1.7rem,2.5vw,2.55rem);
  letter-spacing:-.035em;
}
.project-list{
  display:grid;
  gap:12px;
  margin:22px 0 0;
  padding:0;
  list-style:none;
}
.project-list li{
  position:relative;
  padding-left:24px;
  color:var(--muted);
  font-weight:800;
}
.project-list li:before{
  content:"";
  position:absolute;
  left:0;
  top:.68em;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--orange);
  box-shadow:0 0 0 5px rgba(214,96,6,.1);
}
.project-keywords{
  margin-bottom:22px;
}
.project-detail-card p{
  margin:0;
  color:var(--muted);
  font-weight:700;
  line-height:1.7;
}
@media(max-width:1040px){
  .project-hero-grid,
  .project-overview{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .portfolio-actions{
    grid-template-columns:1fr;
  }
  .project-hero{
    padding:54px 0 64px;
  }
  .project-hero h1{
    letter-spacing:-.03em;
  }
  .project-visual-card{
    border-radius:24px;
  }
  .project-cover-card{
    padding:24px;
  }
}
.footer-rating{
  display:inline-flex!important;
  align-items:center;
  gap:9px;
  margin:18px 0 0!important;
  padding:10px 13px;
  border-radius:16px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  color:#fff!important;
  text-decoration:none;
  width:max-content;
}
.footer-rating .stars{
  font-size:.82rem;
  letter-spacing:1px;
}
.footer-rating strong{
  color:#fff;
  font-weight:950;
}
.footer-rating span:last-child{
  color:rgba(255,255,255,.7);
  font-size:.86rem;
  font-weight:750;
}
.footer-rating:hover{
  background:rgba(255,255,255,.11);
  border-color:rgba(242,164,0,.38);
}
