
:root{--bg:#f6fffc;--paper:#ffffff;--text:#0e2e31;--muted:#5f7175;--brand:#159b71;--brand2:#1fb57f;--accent:#def6eb;--line:#d7efe5;--card:#ffffff;--dark:#0c3c36;--overlay:linear-gradient(90deg, rgba(6,43,40,.88) 0%, rgba(6,43,40,.58) 50%, rgba(6,43,40,.18) 100%);--shadow:0 20px 60px rgba(0,0,0,.12)}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.6} a{color:inherit;text-decoration:none} img{display:block;max-width:100%} .container{width:min(1220px,calc(100% - 36px));margin:auto} .topbar{background:var(--dark);color:#edf7ff;font-size:13px} .topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:9px 0} .topbar-left{display:flex;flex-wrap:wrap;gap:16px 18px} .topbar a{color:#edf7ff} .socials{display:flex;gap:8px;align-items:center} .social-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);font-weight:800;font-size:13px} .site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.84);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)} .nav{display:flex;align-items:center;gap:24px;height:92px} .logo{display:flex;align-items:center;width:auto;max-width:240px;flex:0 0 auto;overflow:hidden} .logo img{display:block;width:auto;max-width:100%;max-height:78px;height:auto;object-fit:contain;object-position:left center;filter:drop-shadow(0 6px 14px rgba(0,0,0,.14))} .desktop-nav{display:flex;align-items:center;gap:18px;margin-left:auto} .navlink,.services-trigger{font-weight:800;font-size:14px;letter-spacing:.01em;padding:12px 2px;background:none;border:0;cursor:pointer;color:var(--text)} .navlink.current,.services-trigger.current,.navlink:hover,.services-trigger:hover{color:var(--brand)} .desktop-services{position:relative} .mega{position:absolute;top:48px;right:-120px;width:520px;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:10px;box-shadow:var(--shadow)} .mega[hidden]{display:none} .mega a{padding:14px 16px;border-radius:14px;background:var(--bg);font-weight:750} .mega a:hover{background:var(--accent)} .cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 19px;border-radius:999px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:white;font-weight:800;border:1px solid transparent;box-shadow:0 10px 28px rgba(0,0,0,.14)} .cta.outline{background:transparent;color:var(--text);border-color:var(--line);box-shadow:none} .mobile-tools{display:none;margin-left:auto;align-items:center;gap:8px} .menu-btn{width:46px;height:46px;border:1px solid var(--line);background:var(--paper);border-radius:14px;font-size:20px;color:var(--text)} .mobile-cta{padding:11px 13px;font-size:12px} .drawer{display:none} .hero{position:relative;min-height:760px;overflow:hidden;display:grid;align-items:center} .hero-media{position:absolute;inset:0} .hero-media img{width:100%;height:100%;object-fit:cover;object-position:center top} .hero-media::after{content:"";position:absolute;inset:0;background:var(--overlay)} .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(310px,.56fr);gap:46px;align-items:center;padding:92px 0} .hero-copy{color:white;max-width:760px} .eyebrow{display:inline-flex;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.16);font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase} .hero h1{font-size:clamp(46px,6vw,78px);line-height:.96;letter-spacing:-.04em;margin:20px 0 16px;font-weight:900} .hero p{font-size:18px;max-width:680px;color:#eef6ff} .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px} .hero .cta.outline{color:white;border-color:rgba(255,255,255,.45)} .hero-card{background:rgba(255,255,255,.95);color:#10243b;border-radius:28px;padding:26px;box-shadow:0 26px 80px rgba(0,0,0,.24)} .hero-card h3{margin:0 0 10px;font-size:24px} .mini-list{display:grid;gap:12px;margin-top:16px} .mini{display:flex;gap:12px;background:#f3f8fb;padding:13px;border-radius:16px} .mini b{display:block} .mini span{display:block} .iconbox{width:42px;height:42px;border-radius:12px;background:#dfeffc;display:grid;place-items:center;flex:0 0 auto} .ticker-wrap{overflow:hidden;background:var(--accent);border-top:1px solid var(--line);border-bottom:1px solid var(--line)} .ticker{display:flex;gap:0;min-width:max-content;animation:ticker 36s linear infinite} .ticker span{display:block;padding:15px 24px;position:relative;font-weight:800;color:var(--text)} .ticker span::after{content:"•";position:absolute;right:-4px;opacity:.55} @keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}} .section{padding:92px 0} .section.alt{background:var(--paper)} .section-head{max-width:780px;margin-bottom:34px} .section-head h2,.split h2{font-size:clamp(34px,4vw,54px);line-height:1.04;letter-spacing:-.03em;margin:0 0 12px} .section-head p{font-size:18px;color:var(--muted)} .service-grid,.feature-grid,.process-grid,.faq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px} .service-card,.feature-card,.process-card,.faq-card,.table-wrap,.form-card,.detail{background:var(--card);border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 10px 35px rgba(0,0,0,.06)} .service-card{transition:.3s} .service-card:hover{transform:translateY(-5px)} .service-card img{width:100%;height:240px;object-fit:cover;object-position:center 18%} .service-card .pad{padding:22px} .service-card h3,.feature-card h3,.process-card h3,.faq-card h3{margin:0 0 10px;font-size:24px} .feature-card,.process-card,.faq-card{padding:24px} .process-card strong{display:inline-flex;width:46px;height:46px;border-radius:50%;background:var(--accent);align-items:center;justify-content:center;color:var(--brand);font-size:18px;margin-bottom:12px} .text-link{color:var(--brand);font-weight:850} .split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center} .split.reverse > :first-child{order:2} .photo-stack{position:relative} .photo-stack img{width:100%;height:520px;object-fit:cover;object-position:center 15%;border-radius:30px;box-shadow:var(--shadow)} .badge-card{position:absolute;left:16px;bottom:16px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:16px 18px;font-weight:800} .detail-list{display:grid;gap:14px} .detail{padding:18px 20px} .detail small{display:block;color:var(--muted);margin-top:4px} .form-wrap{max-width:1000px} .form-card{padding:28px} .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px} .field label{display:block;font-weight:800;margin-bottom:7px} .field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:var(--bg);color:var(--text);padding:13px 14px;border-radius:12px;font:inherit} .field textarea{min-height:130px;resize:vertical} .field.full{grid-column:1/-1} table{width:100%;border-collapse:collapse} th,td{padding:16px;border-bottom:1px solid var(--line);text-align:left} th{background:var(--accent)} .footer{background:var(--dark);color:#e5eef4;padding:70px 0 22px} .footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:28px} .footer a,.footer span{display:block;color:#e5eef4;margin:8px 0} .footer .footer-logo{display:block;width:auto;max-width:220px;max-height:110px;height:auto;background:white;border-radius:18px;padding:8px 10px;object-fit:contain;object-position:left center} .footer h4{color:white;margin:0 0 10px} .footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:32px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;font-size:13px} .footer-socials{margin-top:14px} .wa-float{position:fixed;right:16px;bottom:16px;z-index:60;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:white;font-size:26px;border:3px solid white;box-shadow:0 12px 30px rgba(0,0,0,.25)} .reveal{opacity:0;transform:translateY(28px);transition:.75s ease} .reveal.is-visible{opacity:1;transform:none} @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}} @media(max-width:1024px){.desktop-nav,.desktop-cta{display:none} .mobile-tools{display:flex} .nav{height:84px;gap:12px} .logo{max-width:200px} .drawer{display:block;position:fixed;inset:84px 10px auto 10px;z-index:70;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:14px;transform:translateY(-14px);opacity:0;pointer-events:none;transition:.2s} .drawer[data-open="true"]{transform:none;opacity:1;pointer-events:auto} .drawer>a,.drawer button{display:flex;width:100%;padding:13px;border:0;background:none;border-radius:10px;font:inherit;font-weight:800;color:var(--text)} .hero-grid{grid-template-columns:1fr;gap:28px;padding:72px 0} .hero-card{max-width:560px} .service-grid,.feature-grid,.process-grid,.faq-grid{grid-template-columns:1fr 1fr} .split{grid-template-columns:1fr} .footer-grid{grid-template-columns:1.2fr 1fr 1fr} .footer-grid>div:first-child{grid-column:1/-1} } @media(max-width:640px){.topbar{display:none} .container{width:min(100% - 24px,1220px)} .logo{max-width:165px} .nav{height:78px} .drawer{inset:78px 8px auto 8px} .hero{min-height:720px} .hero-grid{padding:44px 0} .hero h1{font-size:44px} .hero p{font-size:17px} .service-grid,.feature-grid,.process-grid,.faq-grid,.footer-grid{grid-template-columns:1fr} .photo-stack img{height:360px;object-position:center 15%} .service-card img{height:190px;object-position:center 16%} .form-grid{grid-template-columns:1fr} .field.full{grid-column:auto} .footer-bottom{flex-direction:column} .footer .footer-logo{max-width:170px;max-height:90px} .badge-card{left:10px;right:10px} .wa-float{width:54px;height:54px} } 

.hero-copy,.section-head,.split .reveal{background:transparent!important}.hero-copy h1,.hero-copy p{background:transparent!important}.hero-copy .eyebrow{background:rgba(255,255,255,.10);backdrop-filter:blur(3px)}


/* REVISION: header sequence, transparent hero information, animated blocks, non-cropped people */
.hero-info-transparent{background:transparent!important;color:#fff!important;box-shadow:none!important;border:0!important;padding:4px!important;backdrop-filter:none!important}
.hero-info-transparent h3{color:#fff!important;text-shadow:0 2px 14px rgba(0,0,0,.42)}
.hero-info-transparent .mini{background:rgba(8,20,28,.38)!important;color:#fff!important;border:1px solid rgba(255,255,255,.24)!important;backdrop-filter:blur(9px);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.hero-info-transparent .mini .iconbox{background:rgba(255,255,255,.14)!important;color:#fff!important}
.hero-info-transparent .mini span,.hero-info-transparent .mini b{color:#fff!important}
.hero-copy,.hero-copy h1,.hero-copy p{background:transparent!important}
.hero-media img{object-position:center top!important}
.service-card img{object-position:center 12%!important}
.photo-stack img{object-position:center 10%!important}
.interactive-card{will-change:transform;transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease}
.interactive-card:hover{transform:translateY(-8px) scale(1.015);box-shadow:0 24px 56px rgba(0,0,0,.16);border-color:var(--brand)}
.interactive-card::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.18),transparent 34%);opacity:0;transition:opacity .25s}
.interactive-card:hover::after{opacity:1}
.service-card,.feature-card,.pricing-card{position:relative}
.pricing-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.pricing-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 12px 34px rgba(0,0,0,.07);min-height:245px;display:flex;flex-direction:column}
.pricing-card h3{font-size:21px;line-height:1.15;margin:14px 0 10px}
.pricing-card p{color:var(--muted);margin:0 0 18px;flex:1}
.pricing-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--accent);color:var(--brand);font-size:22px;font-weight:900}
.pricing-cta{display:inline-flex;margin-top:auto}
.mobile-sub{max-height:0;overflow:hidden;transition:max-height .3s ease;padding-left:10px}
.mobile-sub[data-open="true"]{max-height:540px}
.mobile-sub a{display:block;padding:10px 14px;color:var(--text)}
@media(max-width:1100px){.pricing-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.pricing-grid{grid-template-columns:1fr 1fr}.hero-info-transparent{max-width:100%!important}.hero-info-transparent .mini{padding:11px!important}}
@media(max-width:480px){.pricing-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.interactive-card:hover{transform:none}.interactive-card::after{display:none}}


/* HOTFIX: footer social icons perfectly round */
.footer .footer-socials{display:flex!important;align-items:center;gap:12px;flex-wrap:wrap}
.footer .footer-socials .social-icon,
.footer .socials.footer-socials .social-icon,
.footer .footer-socials span.social-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 44px!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  max-width:44px!important;
  max-height:44px!important;
  margin:0!important;
  padding:0!important;
  border-radius:50%!important;
  aspect-ratio:1 / 1;
  line-height:1!important;
  font-size:18px!important;
}
