
:root{
  --navy:#082a4b; --navy-2:#0d3b65; --ink:#101820; --muted:#657282;
  --gold:#e9a827; --gold-soft:#fff7e5; --paper:#fff; --soft:#f5f6f7;
  --line:rgba(8,42,75,.10); --radius:30px; --radius-sm:18px;
  --shadow:0 18px 60px rgba(16,24,32,.07);
  --max:1240px;
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:var(--font);color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none} button,input,select,textarea{font:inherit} img{max-width:100%;display:block}
.skip-link{position:absolute;left:-999px;top:10px;z-index:9999;background:#fff;padding:10px 14px;border-radius:10px}.skip-link:focus{left:10px}
.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.88);backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid rgba(8,42,75,.06)}
.header-inner{height:80px;display:flex;align-items:center;gap:28px}.brand{width:82px;flex:none}.brand img{width:82px;height:auto}
.nav{margin-left:auto;display:flex;align-items:center;gap:28px;font-size:15px;font-weight:600}.nav a:not(.button){position:relative;padding:10px 0}.nav a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--gold);border-radius:2px}.menu-toggle{display:none;background:none;border:0;padding:12px}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{display:block;width:22px;height:2px;background:var(--navy);content:"";position:relative}.menu-toggle span:before{position:absolute;top:-7px}.menu-toggle span:after{position:absolute;top:7px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:0 22px;border-radius:13px;border:1px solid transparent;font-weight:700;font-size:15px;cursor:pointer;transition:transform .2s,background .2s,border-color .2s}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--gold);color:#172433}.button.dark{background:var(--navy);color:#fff}.button.ghost{border-color:rgba(8,42,75,.22);background:#fff;color:var(--navy)}.button.text{padding:0;min-height:auto;color:var(--navy);background:transparent}.button.text:after{content:"→"}.button.block{width:100%}.button[disabled]{opacity:.45;pointer-events:none}
.arrow{font-size:18px}.eyebrow{margin:0 0 14px;text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800;color:#c68300}.h1{font-size:clamp(48px,6.2vw,88px);line-height:.98;letter-spacing:-.055em;margin:0;color:var(--navy);max-width:900px}.h2{font-size:clamp(36px,4.2vw,62px);line-height:1.02;letter-spacing:-.045em;margin:0 0 18px;color:var(--navy)}.h3{font-size:27px;line-height:1.1;letter-spacing:-.025em;margin:0 0 10px;color:var(--navy)}.lead{font-size:clamp(18px,1.55vw,22px);line-height:1.55;color:#394858;margin:0;max-width:760px}.copy{font-size:17px;line-height:1.65;color:#465463}.small{font-size:14px;line-height:1.55;color:var(--muted)}
.hero{padding:84px 0 76px}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:54px;align-items:center}.hero-copy .lead{margin-top:28px;max-width:650px}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero-meta{display:flex;gap:24px;flex-wrap:wrap;margin-top:34px;color:#596675;font-size:14px}.hero-meta span:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold);margin-right:9px;vertical-align:2px}
.media-slot{min-height:440px;border-radius:var(--radius);background:#fff;box-shadow:inset 0 0 0 1px rgba(8,42,75,.045),var(--shadow);position:relative;overflow:hidden}.media-slot:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(8,42,75,.018),rgba(233,168,39,.025));pointer-events:none}.media-slot.sm{min-height:250px}.media-slot.tall{min-height:560px}.media-slot.triptych{min-height:330px}.media-note{position:absolute;bottom:22px;left:24px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#a8afb7;display:none}
.section{padding:96px 0}.section.soft{background:var(--soft)}.section.navy{background:var(--navy);color:#fff}.section.navy .h2,.section.navy .h3{color:#fff}.section.navy .lead,.section.navy .copy,.section.navy .small{color:#d9e2eb}.section.goldwash{background:linear-gradient(135deg,#fffaf0,#fff 60%)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-head .lead{max-width:560px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:30px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.split{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}.split.reverse> :first-child{order:2}.split.reverse> :last-child{order:1}
.card{background:#fff;border-radius:24px;padding:30px;box-shadow:inset 0 0 0 1px var(--line)}.card.soft-card{background:var(--soft);box-shadow:none}.card h3{font-size:22px;color:var(--navy);margin:0 0 10px}.card p{margin:0;color:#5c6875;line-height:1.6}.card .button{margin-top:18px}.service-card{display:flex;flex-direction:column;min-height:330px;background:#fff;border-radius:26px;padding:28px;box-shadow:inset 0 0 0 1px var(--line);transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.service-card .service-spacer{flex:1;min-height:96px}.service-card h3{font-size:25px;margin:0 0 10px;color:var(--navy)}.service-card p{color:#56616e;line-height:1.55;margin:0}.service-card .button{align-self:flex-start;margin-top:22px}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:48px}.pillar{padding:24px 0}.pillar-icon{width:44px;height:44px;border-radius:14px;background:var(--gold-soft);display:grid;place-items:center;color:var(--navy);margin-bottom:16px}.pillar-icon svg{width:23px;height:23px}.pillar h3{font-size:18px;margin:0 0 7px;color:var(--navy)}.pillar p{font-size:14px;line-height:1.55;color:#687482;margin:0}
.method-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:44px}.method-step{padding:22px 12px 0 0}.step-number{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f2f4f6;color:var(--navy);font-weight:800;font-size:13px;margin-bottom:16px}.method-step h3{font-size:17px;color:var(--navy);margin:0 0 8px}.method-step p{font-size:14px;line-height:1.55;color:#697582;margin:0}
.quote{padding:42px;border-radius:30px;background:var(--navy);color:#fff}.quote strong{display:block;font-size:clamp(34px,4vw,58px);line-height:1.04;letter-spacing:-.045em}.quote p{color:#d8e0e9;font-size:18px;line-height:1.6;margin:20px 0 0}
.list-clean{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px}.list-clean li{display:flex;gap:12px;align-items:flex-start;color:#42505f;line-height:1.55}.list-clean li:before{content:"✓";width:24px;height:24px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--gold-soft);color:#b77900;font-weight:900;font-size:13px}
.faq-list{display:grid;gap:10px}.accordion-item{background:#fff;border-radius:18px;box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}.accordion-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:none;border:0;text-align:left;padding:22px 24px;font-weight:700;color:var(--navy);cursor:pointer}.accordion-plus{width:18px;height:18px;position:relative}.accordion-plus:before,.accordion-plus:after{content:"";position:absolute;background:var(--navy);border-radius:2px}.accordion-plus:before{width:14px;height:2px;left:2px;top:8px}.accordion-plus:after{height:14px;width:2px;left:8px;top:2px;transition:transform .2s}.accordion-button[aria-expanded="true"] .accordion-plus:after{transform:rotate(90deg)}.accordion-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s}.accordion-panel>div{overflow:hidden}.accordion-panel p{margin:0;padding:0 24px 24px;color:#5d6976;line-height:1.65}.accordion-button[aria-expanded="true"] + .accordion-panel{grid-template-rows:1fr}
/* Realistic WhatsApp phone built with HTML/CSS only */
.phone-stage{min-height:560px;display:grid;place-items:center}.wa-phone{width:min(330px,86vw);padding:10px;border-radius:48px;background:#111820;box-shadow:0 24px 70px rgba(0,0,0,.22);transform:rotate(3deg)}.wa-screen{border-radius:39px;overflow:hidden;background:#efeae2;position:relative;min-height:620px}.ios-status{height:34px;background:#075e54;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 16px;font-size:11px;font-weight:700}.dynamic-island{width:76px;height:20px;background:#0c0c0c;border-radius:14px;position:absolute;left:50%;transform:translateX(-50%);top:7px}.ios-battery{display:inline-block;width:20px;height:9px;border:1px solid rgba(255,255,255,.7);border-radius:3px;padding:1px}.ios-battery:after{content:"";display:block;width:70%;height:100%;background:#fff;border-radius:1px}.wa-header{height:64px;background:#075e54;color:#fff;display:flex;align-items:center;padding:0 12px;gap:9px}.wa-back{font-size:28px;font-weight:300}.wa-avatar{width:38px;height:38px;border-radius:50%;background:#fff;display:grid;place-items:center;overflow:hidden}.wa-avatar img{width:30px}.wa-contact{display:flex;flex-direction:column;flex:1}.wa-contact strong{font-size:14px}.wa-contact span{font-size:11px;opacity:.8}.wa-chat{padding:16px 12px 82px;min-height:478px;background-color:#efeae2;background-image:radial-gradient(circle at 10% 20%,rgba(0,0,0,.025) 0 1px,transparent 1px),radial-gradient(circle at 80% 70%,rgba(0,0,0,.025) 0 1px,transparent 1px);background-size:26px 26px}.wa-date{width:max-content;margin:0 auto 13px;padding:6px 9px;border-radius:8px;background:#e7f3f7;font-size:10px;color:#68757e}.wa-message{position:relative;max-width:82%;padding:9px 9px 18px;border-radius:8px;font-size:12px;line-height:1.38;box-shadow:0 1px 1px rgba(0,0,0,.07);margin-bottom:8px;color:#1b1f22}.wa-in{background:#fff;border-top-left-radius:2px}.wa-out{background:#d9fdd3;margin-left:auto;border-top-right-radius:2px}.wa-time{position:absolute;bottom:4px;right:7px;font-size:9px;color:#84908c}.wa-checks{color:#53bdeb;font-weight:800}.wa-composer{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:8px;padding:8px;background:#f0f2f5}.wa-input{flex:1;border-radius:20px;background:#fff;color:#90979b;font-size:11px;padding:10px 14px}.wa-round{width:34px;height:34px;border-radius:50%;background:#008069;color:#fff;display:grid;place-items:center;font-size:18px}.ios-home{position:absolute;bottom:3px;left:50%;transform:translateX(-50%);width:96px;height:4px;border-radius:4px;background:rgba(0,0,0,.55)}
/* Forms */
.form-shell{background:#f7f7f8;border-radius:30px;padding:34px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px;row-gap:18px}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field.full{grid-column:1/-1}.field label,.field-label{font-size:14px;font-weight:700;color:#1d3043}.field input,.field select,.field textarea{width:100%;min-width:0;max-width:100%;border:1px solid rgba(8,42,75,.14);background:#fff;border-radius:13px;padding:14px 15px;color:#152231;outline:0;min-height:50px}.field textarea{min-height:130px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7f9bb5;box-shadow:0 0 0 4px rgba(8,42,75,.06)}.checkbox{display:flex!important;align-items:flex-start;gap:10px;font-size:13px!important;font-weight:500!important;line-height:1.45;color:#52606e!important}.checkbox input{width:18px!important;height:18px!important;min-height:auto!important;margin:1px 0 0!important;flex:0 0 18px}.radio-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.radio-card{position:relative}.radio-card input{position:absolute;opacity:0;pointer-events:none}.radio-card span{display:flex;min-height:74px;align-items:center;justify-content:center;text-align:center;padding:14px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px rgba(8,42,75,.13);font-weight:700;color:#263a4f;cursor:pointer;transition:.2s}.radio-card input:checked+span{box-shadow:inset 0 0 0 2px var(--navy);background:#f8fbfd;color:var(--navy)}
.wizard{max-width:920px;margin:0 auto}.wizard-progress{display:flex;align-items:center;gap:10px;margin-bottom:28px}.wizard-progress-bar{height:5px;border-radius:8px;background:#e6e9ec;flex:1;overflow:hidden}.wizard-progress-bar span{display:block;height:100%;width:25%;background:var(--gold);border-radius:inherit;transition:width .25s}.wizard-progress-text{font-size:13px;color:#6b7783;min-width:92px;text-align:right}.wizard-step{display:none}.wizard-step.active{display:block}.wizard-step h2{font-size:clamp(34px,4vw,52px);line-height:1.05;letter-spacing:-.04em;color:var(--navy);margin:0 0 12px}.wizard-step>.small{margin-bottom:26px}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:30px}.priority-banner{display:none;background:#fff7e4;border-radius:18px;padding:18px 20px;margin-bottom:22px;color:#614500}.priority-banner.active{display:block}.upload-box{border:1.5px dashed rgba(8,42,75,.24);border-radius:18px;background:#fff;padding:24px;text-align:center}.upload-box input{max-width:100%}.success-card{display:none;text-align:center;padding:48px 24px}.success-card.active{display:block}.request-code{display:inline-block;padding:9px 14px;border-radius:999px;background:var(--gold-soft);color:#8b5c00;font-weight:800;letter-spacing:.04em;margin:10px 0 22px}
/* Portfolio */
.filters{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0 34px}.filter{border:0;background:#f1f3f5;border-radius:999px;padding:10px 15px;color:#42505d;font-weight:700;cursor:pointer}.filter.active{background:var(--navy);color:#fff}.project-empty{padding:56px 30px;background:#f7f7f8;border-radius:28px;text-align:center}.project-empty h3{font-size:28px;color:var(--navy);margin:0 0 10px}.project-empty p{max-width:650px;margin:0 auto;color:#63707c;line-height:1.65}.project-structure{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
/* CTA/footer */
.cta-band{padding:42px 0;background:var(--navy);color:#fff}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-inner h2{font-size:38px;letter-spacing:-.035em;margin:0 0 6px}.cta-inner p{margin:0;color:#d3dce5}.cta-actions{display:flex;gap:10px;flex-wrap:wrap}.cta-band .button.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.28)}
.site-footer{padding:60px 0 28px;background:#061d33;color:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:36px}.footer-brand img{width:92px;filter:brightness(0) invert(1);opacity:.98}.footer-brand p{color:#b8c5d1;max-width:310px;line-height:1.55}.footer-col h3{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#7f9ab2;margin:0 0 16px}.footer-col a,.footer-col span{display:block;color:#d7e0e8;font-size:14px;margin:10px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.10);margin-top:42px;padding-top:22px;display:flex;justify-content:space-between;color:#8297aa;font-size:12px;gap:18px;flex-wrap:wrap}
.legal-inline{display:flex;gap:12px;flex-wrap:wrap}.legal-inline [hidden]{display:none!important}
/* misc */
.breadcrumbs{padding-top:24px;font-size:13px;color:#778491}.breadcrumbs a{color:#546678}.page-hero{padding:70px 0 54px}.page-hero .h1{font-size:clamp(46px,5.7vw,78px)}.page-hero .lead{margin-top:24px}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}.stat{padding:24px;border-radius:20px;background:#f7f8f9}.stat strong{display:block;color:var(--navy);font-size:26px}.stat span{font-size:14px;color:#64717e}.notice{padding:20px 22px;background:var(--gold-soft);border-radius:18px;color:#5e460f;line-height:1.55}.tag{display:inline-flex;padding:7px 10px;border-radius:999px;background:#f1f3f5;color:#4f5d69;font-size:12px;font-weight:700}.aside-stack{display:grid;gap:16px}.sticky-aside{position:sticky;top:112px}.service-nav{display:grid;gap:8px}.service-nav a{padding:13px 14px;border-radius:12px;background:#fff;color:#425463;font-weight:650}.service-nav a[aria-current="page"]{background:var(--navy);color:#fff}
@media(max-width:980px){.header-inner{height:72px}.brand,.brand img{width:68px}.menu-toggle{display:block;margin-left:auto}.nav{display:none;position:absolute;left:18px;right:18px;top:72px;background:#fff;border-radius:22px;box-shadow:0 20px 60px rgba(0,0,0,.14);padding:18px;flex-direction:column;align-items:stretch;gap:2px}.nav.open{display:flex}.nav a:not(.button){padding:13px 10px}.nav .button{margin-top:8px}.hero{padding:56px 0}.hero-grid,.grid-2,.split{grid-template-columns:1fr}.split.reverse> :first-child,.split.reverse> :last-child{order:initial}.media-slot{min-height:360px}.grid-3{grid-template-columns:1fr 1fr}.grid-4,.pillars{grid-template-columns:1fr 1fr}.method-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-col:last-child{grid-column:auto}.radio-cards{grid-template-columns:1fr 1fr}.phone-stage{min-height:500px}.wa-phone{transform:none}.project-structure{grid-template-columns:1fr}.cta-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.container{width:min(calc(100% - 30px),var(--max))}.h1{font-size:48px}.h2{font-size:38px}.lead{font-size:18px}.section{padding:70px 0}.page-hero{padding:46px 0 38px}.grid-3,.grid-4,.pillars,.method-grid,.field-grid,.radio-cards,.stat-row{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.hero-meta{gap:10px 16px}.media-slot{min-height:300px}.form-shell{padding:22px;border-radius:22px}.wizard-actions{flex-direction:column-reverse}.wizard-actions .button{width:100%}.cta-actions{width:100%;flex-direction:column}.cta-actions .button{width:100%}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column}.wa-screen{min-height:580px}.wa-chat{min-height:440px}.project-structure{gap:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* V5.2 — richer motion, priority visibility, services redesign */
.nav .button.dark{position:relative;isolation:isolate;overflow:visible}
.nav .button.dark::before{content:"";position:absolute;inset:-18px -24px;z-index:-1;border-radius:30px;background:radial-gradient(ellipse at center,rgba(233,168,39,.30),rgba(233,168,39,.12) 40%,rgba(233,168,39,0) 72%);filter:blur(12px);opacity:.8;animation:ctaMist 4.4s ease-in-out infinite}
.nav .button.dark::after{content:"";position:absolute;inset:-4px;border-radius:17px;border:1px solid rgba(233,168,39,.28);opacity:.5;animation:ctaRing 4.4s ease-in-out infinite}
@keyframes ctaMist{0%,100%{transform:scale(.92);opacity:.48}50%{transform:scale(1.08);opacity:.92}}
@keyframes ctaRing{0%,100%{transform:scale(.96);opacity:.15}50%{transform:scale(1.04);opacity:.55}}
.home-page .hero{position:relative;overflow:hidden}
.home-page .hero::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-180px;top:-180px;background:radial-gradient(circle,rgba(233,168,39,.11),rgba(233,168,39,0) 68%);filter:blur(2px);animation:heroOrbit 11s ease-in-out infinite;pointer-events:none}
.home-page .hero::after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;left:-220px;bottom:-220px;background:radial-gradient(circle,rgba(8,42,75,.07),rgba(8,42,75,0) 68%);animation:heroOrbit2 13s ease-in-out infinite;pointer-events:none}
@keyframes heroOrbit{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-45px,42px,0) scale(1.12)}}
@keyframes heroOrbit2{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(58px,-34px,0)}}
.home-page .media-slot.tall{animation:slotFloat 7s ease-in-out infinite}
@keyframes slotFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.priority-quick{margin-top:22px;display:inline-flex;align-items:center;gap:8px;color:var(--navy);font-size:14px;font-weight:600;padding:10px 14px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.priority-quick strong{font-weight:800}.priority-pulse{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 rgba(233,168,39,.5);animation:priorityPulse 2.2s infinite}
@keyframes priorityPulse{0%{box-shadow:0 0 0 0 rgba(233,168,39,.45)}70%{box-shadow:0 0 0 9px rgba(233,168,39,0)}100%{box-shadow:0 0 0 0 rgba(233,168,39,0)}}
.priority-strip{padding:22px 0 34px;background:#fff}.priority-strip-inner{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;border-radius:26px;padding:28px 30px;background:linear-gradient(120deg,#fff9ed,#fff 50%,#f7fafc);box-shadow:inset 0 0 0 1px rgba(233,168,39,.18),0 14px 42px rgba(8,42,75,.06)}
.priority-symbol{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--gold-soft)}.priority-symbol span{width:12px;height:12px;border-radius:50%;background:var(--gold);animation:priorityPulse 2.2s infinite}.priority-copy .eyebrow{margin-bottom:7px}.priority-copy h2{margin:0 0 7px;color:var(--navy);font-size:clamp(23px,2.4vw,34px);letter-spacing:-.035em}.priority-copy p{margin:0;color:#566574;line-height:1.55;max-width:780px}
.service-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.service-panel{position:relative;min-height:390px;border-radius:30px;padding:30px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);display:flex;flex-direction:column;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}.service-panel::before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-110px;top:-110px;background:radial-gradient(circle,rgba(233,168,39,.11),transparent 68%);transition:transform .5s ease}.service-panel:hover{transform:translateY(-5px);box-shadow:0 25px 70px rgba(16,24,32,.09)}.service-panel:hover::before{transform:translate(-18px,18px) scale(1.13)}
.service-panel-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:64px}.service-index{font-size:13px;font-weight:800;letter-spacing:.08em;color:#a56d00}.service-arrow{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#f5f6f7;color:var(--navy);font-size:19px;transition:transform .3s,background .3s}.service-panel:hover .service-arrow{transform:rotate(45deg);background:var(--gold-soft)}
.service-panel-copy{max-width:520px}.service-panel h3{font-size:clamp(28px,3vw,42px);line-height:1.02;letter-spacing:-.04em;color:var(--navy);margin:0 0 14px}.service-panel p{font-size:17px;line-height:1.55;color:#536170;margin:0 0 22px}.service-panel ul{list-style:none;padding:0;margin:0;display:flex;gap:8px;flex-wrap:wrap}.service-panel li{font-size:12px;font-weight:700;color:#536170;background:#f3f5f6;padding:8px 10px;border-radius:999px}.service-link{margin-top:auto;padding-top:28px;font-weight:800;color:var(--navy)}.service-link b{display:inline-block;margin-left:6px;transition:transform .25s}.service-panel:hover .service-link b{transform:translateX(5px)}
.service-panel.tone-b{background:linear-gradient(145deg,#fff,#f8fafb)}.service-panel.tone-c{background:linear-gradient(145deg,#fffdf8,#fff)}.service-panel.tone-d{background:linear-gradient(145deg,#fbfcfd,#fff)}.service-panel.tone-e,.service-panel.tone-f{min-height:340px}.services-tail{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:26px;flex-wrap:wrap}.service-open{margin-top:28px}
/* Scroll reveal — applied only after JS loads */
.motion-ready .reveal-target{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.75,.2,1)}.motion-ready .reveal-target.revealed{opacity:1;transform:none}.motion-ready .service-panel.reveal-target:nth-child(2),.motion-ready .method-step.reveal-target:nth-child(2){transition-delay:.06s}.motion-ready .service-panel.reveal-target:nth-child(3),.motion-ready .method-step.reveal-target:nth-child(3){transition-delay:.12s}.motion-ready .service-panel.reveal-target:nth-child(4),.motion-ready .method-step.reveal-target:nth-child(4){transition-delay:.18s}.motion-ready .method-step.reveal-target:nth-child(5){transition-delay:.24s}.motion-ready .method-step.reveal-target:nth-child(6){transition-delay:.30s}
@media(max-width:980px){.priority-strip-inner{grid-template-columns:auto 1fr}.priority-strip-inner>.button{grid-column:1/-1;width:max-content;margin-left:72px}.service-showcase{grid-template-columns:1fr}.service-panel{min-height:340px}.service-panel-top{margin-bottom:42px}}
@media(max-width:640px){.nav .button.dark::before{display:none}.priority-strip{padding:12px 0 22px}.priority-strip-inner{grid-template-columns:1fr;padding:22px}.priority-symbol{display:none}.priority-strip-inner>.button{grid-column:auto;margin-left:0;width:100%}.service-panel{padding:24px;min-height:330px}.service-panel-top{margin-bottom:34px}.service-panel h3{font-size:32px}.services-tail{align-items:stretch;flex-direction:column}.services-tail .button{width:100%}.priority-quick{align-items:flex-start;line-height:1.35}}
@media(prefers-reduced-motion:reduce){.nav .button.dark::before,.nav .button.dark::after,.home-page .hero::before,.home-page .hero::after,.home-page .media-slot.tall,.priority-pulse,.priority-symbol span{animation:none!important}.motion-ready .reveal-target{opacity:1!important;transform:none!important}}


/* V5.3 — cleaner hero, stronger CTA focus, smoother service reading */
.hero-meta,.priority-quick{display:none!important}
.nav .button.dark::before{inset:-28px -38px;border-radius:40px;background:radial-gradient(ellipse at center,rgba(238,173,35,.38) 0%,rgba(255,225,157,.24) 34%,rgba(245,194,74,.12) 52%,rgba(233,168,39,0) 76%);filter:blur(16px);opacity:.92}
.nav .button.dark::after{inset:-6px;border-color:rgba(233,168,39,.34);box-shadow:0 0 0 7px rgba(233,168,39,.045)}
.priority-strip{padding-top:12px}.priority-strip-inner{grid-template-columns:minmax(0,1fr) auto;gap:34px;padding:30px 34px}.priority-copy{max-width:780px}.priority-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.priority-actions .button{white-space:nowrap}
.principle-note{margin:30px 0 0;max-width:700px;padding-top:22px;border-top:1px solid var(--line);font-size:18px;line-height:1.55;color:#5a6673;letter-spacing:-.01em}

/* service detail — one flowing section instead of a static sidebar */
.service-detail-anchor{scroll-margin-top:96px;overflow:hidden}.service-detail-shell{position:relative}.service-switcher-wrap{margin-bottom:38px}.service-switcher{display:flex;gap:9px;overflow-x:auto;padding:4px 3px 13px;scrollbar-width:none;scroll-snap-type:x proximity}.service-switcher::-webkit-scrollbar{display:none}.service-switch-link{flex:0 0 auto;display:flex;align-items:center;gap:9px;padding:13px 17px;border-radius:999px;background:#fff;color:#445364;box-shadow:inset 0 0 0 1px var(--line);font-weight:700;font-size:14px;transition:transform .25s ease,background .25s,color .25s,box-shadow .25s;scroll-snap-align:start}.service-switch-link span{font-size:10px;letter-spacing:.08em;color:#8a96a2}.service-switch-link:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(8,42,75,.08),inset 0 0 0 1px rgba(8,42,75,.08)}.service-switch-link[aria-current="page"]{background:var(--navy);color:#fff;box-shadow:0 14px 34px rgba(8,42,75,.16)}.service-switch-link[aria-current="page"] span{color:#efba54}
.service-detail-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:24px;align-items:stretch}.service-detail-block,.service-manage-card{border-radius:30px;padding:34px}.service-detail-block{background:#fff;box-shadow:inset 0 0 0 1px var(--line)}.service-detail-block .h2{max-width:650px;margin-bottom:28px}.service-use-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.service-use-item{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:18px;background:#f6f7f8;transition:transform .25s ease,background .25s ease}.service-use-item:hover{transform:translateY(-2px);background:#f1f4f6}.service-use-item span{font-size:11px;font-weight:800;letter-spacing:.08em;color:#8a96a2;padding-top:3px}.service-use-item p{margin:0;color:#3f4e5d;line-height:1.45;font-size:15px}.service-manage-card{position:relative;background:linear-gradient(145deg,#0a3156,#0c3c68);color:#fff;overflow:hidden;box-shadow:0 24px 70px rgba(8,42,75,.14)}.service-manage-card::before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;right:-130px;top:-140px;background:radial-gradient(circle,rgba(233,168,39,.18),transparent 68%);animation:serviceGlow 8s ease-in-out infinite}.service-manage-card>*{position:relative}.service-manage-card .eyebrow{color:#efb446}.service-manage-card .h3{font-size:clamp(30px,3.3vw,46px);line-height:1.04;color:#fff;letter-spacing:-.04em;margin-bottom:16px}.service-manage-card .copy{font-size:17px;line-height:1.65;color:#dbe4ec;margin:0 0 30px}.service-mini-flow{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 30px;padding:15px 0;border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}.service-mini-flow span{font-size:12px;font-weight:700;color:#edf3f8}.service-mini-flow i{display:block;width:22px;height:1px;background:rgba(239,180,70,.65)}.service-manage-card .button.dark{background:#fff;color:var(--navy)}
@keyframes serviceGlow{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-28px,24px) scale(1.12)}}
body.service-transitioning main{opacity:.42;transform:translateY(5px);transition:opacity .16s ease,transform .16s ease}body.service-arriving main{animation:serviceArrive .34s ease both}@keyframes serviceArrive{from{opacity:.45;transform:translateY(8px)}to{opacity:1;transform:none}}
@view-transition{navigation:auto}::view-transition-old(root){animation:fadeOld .16s ease both}::view-transition-new(root){animation:fadeNew .25s ease both}@keyframes fadeOld{to{opacity:.55}}@keyframes fadeNew{from{opacity:.55}to{opacity:1}}

@media(max-width:980px){.priority-strip-inner{grid-template-columns:1fr}.priority-actions{justify-content:flex-start}.service-detail-grid{grid-template-columns:1fr}.service-use-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.nav .button.dark::before{display:block;inset:-18px -20px;filter:blur(13px)}.priority-actions{flex-direction:column;align-items:stretch}.priority-actions .button{width:100%}.service-switcher-wrap{margin-bottom:24px}.service-detail-block,.service-manage-card{padding:24px;border-radius:24px}.service-use-grid{grid-template-columns:1fr}.service-switch-link{padding:11px 14px}.service-mini-flow i{width:12px}}
@media(prefers-reduced-motion:reduce){.service-manage-card::before{animation:none!important}body.service-arriving main{animation:none!important}}

/* V5.4 — CTA mist stays behind the button; service labels without numbering; form grid hardening */
.nav .button.dark{background:var(--navy)!important;color:#fff!important;isolation:auto;overflow:visible;box-shadow:0 0 0 7px rgba(233,168,39,.055),0 0 26px 10px rgba(233,168,39,.16),0 0 54px 19px rgba(233,168,39,.10);animation:ctaMistBehind 4.8s ease-in-out infinite}
.nav .button.dark::before,.nav .button.dark::after{display:none!important}
@keyframes ctaMistBehind{0%,100%{box-shadow:0 0 0 6px rgba(233,168,39,.045),0 0 22px 8px rgba(233,168,39,.13),0 0 46px 16px rgba(233,168,39,.07)}50%{box-shadow:0 0 0 8px rgba(233,168,39,.065),0 0 31px 12px rgba(233,168,39,.20),0 0 62px 22px rgba(233,168,39,.11)}}
.service-switch-link{gap:0;padding-left:20px;padding-right:20px}
.service-switch-link>span:first-child{display:none}
.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:20px}
.field{min-width:0;overflow:visible}
.field input,.field select,.field textarea{min-width:0;max-width:100%}
@media(max-width:640px){.field-grid{grid-template-columns:minmax(0,1fr);column-gap:0}.nav .button.dark{animation:none;box-shadow:0 0 0 5px rgba(233,168,39,.04),0 0 20px 8px rgba(233,168,39,.10)}}
@media(prefers-reduced-motion:reduce){.nav .button.dark{animation:none!important}}


/* V5.6 — Lavora con noi: Safari/iPad-safe form layout */
.candidate-form .field-grid{column-gap:28px;row-gap:20px}
.candidate-form .birth-field,.candidate-form .domicile-field,.candidate-form .call-date-field,.candidate-form .call-time-field{grid-column:1/-1}
.candidate-form .field{width:100%;min-width:0}
.candidate-form input[type="date"]{display:block;inline-size:100%;width:100%;max-inline-size:100%;max-width:100%;min-inline-size:0;min-width:0}
@media(max-width:760px){.candidate-form .field-grid{grid-template-columns:1fr}}


/* V5.7 — preventivo close control */
.quote-close{position:fixed;right:max(22px,calc((100vw - 1280px)/2 + 18px));top:98px;z-index:75;width:46px;height:46px;border:1px solid rgba(8,42,75,.14);border-radius:999px;background:rgba(255,255,255,.94);color:var(--navy);display:grid;place-items:center;box-shadow:0 12px 34px rgba(8,42,75,.10);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.quote-close span{display:block;font-size:30px;line-height:1;font-weight:400;transform:translateY(-1px)}
.quote-close:hover{transform:scale(1.05);background:#fff;box-shadow:0 15px 40px rgba(8,42,75,.15)}
@media(max-width:760px){.quote-close{top:84px;right:16px;width:42px;height:42px}.quote-close span{font-size:27px}}


/* V5.8 — real project portfolio / before-after */
.interventions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.project-card{background:#fff;border-radius:30px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--line),0 18px 55px rgba(16,24,32,.055);transition:transform .28s ease,box-shadow .28s ease}
.project-card:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1px var(--line),0 24px 70px rgba(16,24,32,.09)}
.project-card-link{display:block;height:100%}
.project-card-media{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:16/9;background:#e8ebee;overflow:hidden}
.project-card-media figure,.project-mini-figure{position:relative;margin:0;overflow:hidden;min-width:0}
.project-card-media img,.project-mini-figure img{width:100%;height:100%;object-fit:cover}
.project-card-media figure:first-child{border-right:1px solid rgba(255,255,255,.82)}
.ba-label{position:absolute;left:14px;top:14px;z-index:2;display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border-radius:999px;background:rgba(8,42,75,.88);color:#fff;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.project-card-copy{padding:27px 28px 29px}
.project-meta{margin:0 0 10px;color:#b27706;font-size:12px;font-weight:800;letter-spacing:.10em;text-transform:uppercase}
.project-card h2{margin:0 0 10px;color:var(--navy);font-size:clamp(25px,2.4vw,34px);line-height:1.06;letter-spacing:-.035em}
.project-card-copy>p:not(.project-meta){margin:0;color:#596775;line-height:1.6}
.project-open{display:inline-flex;align-items:center;gap:9px;margin-top:20px;color:var(--navy);font-size:14px;font-weight:800}.project-open b{font-size:18px}
.project-facts{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px}.project-facts span{padding:9px 13px;border-radius:999px;background:#f1f3f5;color:#445361;font-size:13px;font-weight:700}
.before-after-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.ba-figure{position:relative;margin:0;border-radius:28px;overflow:hidden;background:#e7eaed;box-shadow:0 18px 60px rgba(16,24,32,.07)}
.ba-figure img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.project-mini-link{display:block;border-radius:28px;transition:transform .28s ease,box-shadow .28s ease}.project-mini-link:hover{transform:translateY(-3px)}
.project-mini-pair{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:16/10;border-radius:28px;overflow:hidden;background:#e8ebee;box-shadow:var(--shadow)}
.project-mini-pair .project-mini-figure:first-child{border-right:1px solid rgba(255,255,255,.82)}
.project-mini-pair .ba-label{left:11px;top:11px;min-height:27px;padding:0 9px;font-size:10px}
@media(max-width:980px){.interventions-grid{grid-template-columns:1fr}}
@media(max-width:640px){.before-after-grid{gap:8px}.ba-figure{border-radius:18px}.ba-label{left:9px;top:9px;min-height:26px;padding:0 8px;font-size:9px}.project-card{border-radius:24px}.project-card-copy{padding:22px}.project-card-media{aspect-ratio:4/3}.project-mini-pair{border-radius:22px;aspect-ratio:4/3}}


/* V5.9 — Home hero: real FLUCTUS van visual */
.home-page .hero-visual{position:relative;margin:0;aspect-ratio:4/3;border-radius:32px;overflow:hidden;background:#eef1f3;box-shadow:0 24px 70px rgba(16,24,32,.12),inset 0 0 0 1px rgba(8,42,75,.05)}
.home-page .hero-visual::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(8,42,75,.018),rgba(233,168,39,.025))}
.home-page .hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.002)}
@media(max-width:980px){.home-page .hero-visual{max-width:760px;width:100%;margin:4px auto 0;border-radius:28px}}
@media(max-width:640px){.home-page .hero{padding-top:44px}.home-page .hero-visual{border-radius:22px;margin-top:2px;aspect-ratio:4/3;box-shadow:0 16px 48px rgba(16,24,32,.10)}}

/* V5.10 — photographic portfolio */
.work-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.work-gallery h3{color:var(--navy);font-size:24px;letter-spacing:-.03em;margin:22px 0 8px}.work-gallery p{color:var(--muted);line-height:1.6;margin:0}
.photo-open{display:block;position:relative;border:0;padding:0;width:100%;background:transparent;cursor:zoom-in;color:white;text-align:left}
.photo-open:focus-visible{outline:3px solid var(--gold);outline-offset:-4px}
.photo-expand{position:absolute;right:14px;bottom:14px;border:1px solid #ffffff77;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;background:#082a4bc9;font-size:22px}
.work-feature{margin:0;overflow:hidden;border-radius:28px}.work-feature img{width:100%;height:auto;max-height:620px;object-fit:cover;object-position:center 40%}
.photo-viewer{box-sizing:border-box;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#071725f5;color:white;overflow:hidden}
.photo-viewer::backdrop{background:#071725ef}.photo-viewer-inner{height:100%;display:flex;flex-direction:column;padding:max(12px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));gap:12px}
.photo-viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-shrink:0}.photo-viewer-caption{margin:0;font-size:14px;line-height:1.4}
.photo-viewer-close{flex-shrink:0;min-height:48px;padding:0 16px;background:#fff;color:#082a4b;border:0;border-radius:24px;cursor:pointer;font-weight:700}.photo-viewer-close:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.photo-viewer-image{flex:1;min-height:0;width:100%;object-fit:contain}.photo-viewer[open]{display:block}
@media(max-width:640px){.work-gallery{grid-template-columns:1fr;gap:32px}.photo-expand{width:30px;height:30px;right:10px;bottom:10px}.work-gallery .ba-figure{max-width:100%}.work-feature{border-radius:22px}}

/* V5.11: accessibility, readable legal pages and resilient form states. */
[hidden]{display:none!important} :focus-visible{outline:3px solid #b66c00;outline-offset:4px}
body{font-size:16px}.footer-col{overflow-wrap:anywhere}.footer-col span{font-size:14px;line-height:1.6}
img{height:auto}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(100%)}
.legal-copy{max-width:920px;font-size:16px;line-height:1.7}.legal-copy h2{margin:2em 0 .65em;font-size:24px;color:var(--navy)}
.legal-copy a,.notice a{color:var(--navy);text-decoration:underline;text-underline-offset:3px}.legal-copy table{width:100%;border-collapse:collapse;margin:24px 0;table-layout:fixed}
.legal-copy th,.legal-copy td{padding:12px;text-align:left;border:1px solid var(--line);overflow-wrap:anywhere}
#quote-message{margin-bottom:24px}#quote-message[data-state="error"]{background:#fff1ef;color:#822b1d;border:1px solid #dfb2a9}
#quote-message[data-state="busy"]{background:#eaf2fa;color:#082a4b}.request-code{font-weight:800;font-size:clamp(16px,3vw,24px);overflow-wrap:anywhere}
button[disabled]{opacity:.65;cursor:wait}.wizard-step:not(.active){display:none}.wizard-step.active{display:block}
.quote-review{display:grid;gap:16px;margin:24px 0}.review-section{background:#fff;border:1px solid rgba(8,42,75,.13);border-radius:18px;padding:22px;min-width:0}.review-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.review-heading h3{font-size:20px;color:var(--navy);margin:0}.review-edit{border:0;background:transparent;color:var(--navy);text-decoration:underline;text-underline-offset:3px;min-height:44px;font:inherit;font-size:14px;cursor:pointer}.review-section dl{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,3fr);gap:10px 18px;margin:0}.review-section dt{font-size:14px;color:#52606e}.review-section dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.wizard-progress-text{font-size:14px;max-width:65%}.wizard-progress-bar span{width:20%}.checkbox{font-size:14px!important}.request-code{max-width:100%;box-sizing:border-box}.success-card{padding-left:0;padding-right:0}#intake-fallback{margin:16px 0}#intake-fallback p{margin:0 0 12px}.review-section button[disabled]{cursor:wait}@media(max-width:480px){.review-section{padding:16px}.review-section dl{grid-template-columns:minmax(0,1fr);gap:4px}.review-section dd{margin-bottom:12px}.review-heading{align-items:flex-start}.wizard-progress-text{max-width:70%}}
.field input,.field select,.field textarea{font-size:16px}.wizard-actions{gap:12px}.wizard-actions button{min-height:48px}
#clear-media{margin-top:12px}.small,.service-panel li{font-size:14px}.ba-label{font-size:12px}
@media(max-width:640px){.legal-copy th,.legal-copy td{padding:8px;font-size:14px}.field-grid{grid-template-columns:minmax(0,1fr)}.wizard-actions{flex-wrap:wrap}.wizard-actions>*{flex:1}.ba-label{font-size:12px}.nav.open{max-height:calc(100dvh - 90px);overflow-y:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal-target{opacity:1!important;transform:none!important}}
