@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800;900&family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --blue:#0b4fa3; --blue2:#06356f; --navy:#071c35; --yellow:#ffb400;
  --paper:#f5f7fa; --white:#fff; --ink:#142235; --muted:#647286;
  --line:#dce3eb; --green:#20b65a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.topbar{height:82px;display:flex;align-items:center;gap:32px;padding:0 max(5vw,24px);background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.brand{display:flex;flex-direction:column;line-height:.86;min-width:185px}
.brand-name{font-family:"Barlow Condensed",Arial,sans-serif;font-size:34px;font-weight:900;font-style:italic;color:var(--blue);letter-spacing:-1px}
.brand-line{height:4px;width:76px;background:var(--yellow);margin:4px 0 5px;border-radius:10px}
.brand-sub{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:800;font-size:12px;letter-spacing:1.2px;color:#31465f}
nav{display:flex;gap:28px;margin-left:auto;font-size:14px;font-weight:700}
nav a:hover{color:var(--blue)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:10px;font-weight:800;transition:.2s transform,.2s box-shadow,.2s background}
.btn:hover{transform:translateY(-2px)}
.btn-small{background:var(--blue);color:#fff;padding:12px 17px;font-size:13px}
.btn-primary{background:var(--blue);color:#fff;padding:16px 21px;box-shadow:0 10px 25px rgba(11,79,163,.18)}
.btn-primary:hover{background:var(--blue2);box-shadow:0 14px 30px rgba(11,79,163,.25)}
.btn-yellow{background:var(--yellow);color:var(--navy);box-shadow:0 10px 25px rgba(255,180,0,.28)}
.btn-yellow:hover{background:#ffc329;color:var(--navy);box-shadow:0 14px 30px rgba(255,180,0,.34)}
.btn-yellow .wa{color:var(--green)}
.btn-light{background:#fff;color:var(--blue);padding:15px 20px}
.btn-large{padding:18px 24px}
.wa{color:#77ef9e;font-size:20px}

.hero{min-height:650px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:5vw;padding:70px max(6vw,28px);overflow:hidden;background:linear-gradient(125deg,#fff 0%,#f5f8fc 62%,#e9f0f8 100%)}
.hero-copy{max-width:680px}
.eyebrow{text-transform:uppercase;letter-spacing:2.1px;font-size:12px;font-weight:900;color:var(--blue)}
.eyebrow.light{color:#b9d7ff}
h1,h2,h3{font-family:"Barlow Condensed",Arial,sans-serif;margin:0;color:var(--navy)}
h1{font-size:clamp(48px,6.2vw,88px);line-height:.92;letter-spacing:-2.5px;margin-top:16px;max-width:760px}
h1 strong,.cta h2 strong{color:var(--blue)}
.hero-copy>p{font-size:18px;line-height:1.7;color:var(--muted);max-width:650px;margin:24px 0 28px}
.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.text-link{font-weight:800;font-size:14px;color:var(--blue)}
.quick{display:flex;gap:8px;flex-wrap:wrap;margin-top:34px}
.quick span{background:#eef3f9;border:1px solid #dce5ef;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700;color:#455a72}

.hero-visual{min-height:500px;position:relative}
.photo-card{position:absolute;right:0;top:15px;width:78%;height:430px;border-radius:28px;overflow:hidden;box-shadow:0 30px 70px rgba(12,37,67,.18)}
.photo-card img{width:100%;height:100%;object-fit:cover}
.mascot-card{position:absolute;left:-2%;bottom:-2%;width:48%;border-radius:28px;overflow:hidden;background:#fff;box-shadow:0 25px 55px rgba(12,37,67,.22);border:7px solid #fff}
.stamp{position:absolute;right:3%;bottom:5%;background:var(--yellow);color:var(--navy);padding:14px 18px;border-radius:12px;transform:rotate(-3deg);font-family:"Barlow Condensed";font-size:28px;font-weight:900;line-height:.75;box-shadow:0 10px 25px rgba(0,0,0,.16)}
.stamp small{font-size:12px;letter-spacing:1px}

.trust-strip{background:var(--navy);color:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:0 max(6vw,28px)}
.trust-strip div{padding:24px 26px;border-right:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:5px}
.trust-strip div:last-child{border:0}
.trust-strip b{font-family:"Barlow Condensed";font-size:20px}
.trust-strip span{font-size:11px;color:#aebdd0}

.section{padding:100px max(6vw,28px)}
.section-heading{max-width:720px;margin-bottom:48px}
.section-heading h2,.feature h2,.secondary-service h2,.cta h2{font-size:clamp(40px,5vw,64px);line-height:.98;letter-spacing:-1.3px;margin-top:12px}
.section-heading p,.feature-copy>p,.secondary-service p,.cta p{color:var(--muted);line-height:1.7}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.service-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;position:relative;min-height:280px;transition:.25s}
.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(12,37,67,.08)}
.number{position:absolute;right:24px;top:22px;font-family:"Barlow Condensed";font-weight:900;color:#c9d4e0;font-size:28px}
.icon{width:54px;height:54px;border-radius:14px;background:#eaf2fb;color:var(--blue);display:grid;place-items:center;font-size:26px;font-weight:900;margin-bottom:35px}
.service-card h3{font-size:29px}
.service-card p{color:var(--muted);line-height:1.65;font-size:14px}

.feature{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;background:#fff;padding:90px max(6vw,28px)}
.feature-image{height:500px;border-radius:26px;overflow:hidden;position:relative}
.feature-image img{width:100%;height:100%;object-fit:cover}
.feature-video{background:#06172b;box-shadow:0 18px 45px rgba(12,37,67,.12)}
.feature-video iframe{width:100%;height:100%;border:0;display:block}
.feature-copy{max-width:590px}
.feature-copy ul{list-style:none;padding:0;margin:25px 0 32px}
.feature-copy li{padding:11px 0 11px 30px;border-bottom:1px solid var(--line);position:relative;font-weight:650}
.feature-copy li:before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:900}

.secondary-service{padding:0 max(6vw,28px) 90px;background:#fff}
.secondary-inner{background:var(--blue2);border-radius:24px;padding:44px 50px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:40px}
.secondary-inner h2{color:#fff;font-size:44px}
.secondary-inner p{color:#c7d7ea;max-width:760px;margin-bottom:0}

.cta{display:grid;grid-template-columns:.65fr 1.35fr;align-items:center;gap:4vw;padding:80px max(8vw,28px);background:linear-gradient(135deg,#f6f9fd,#eaf1f8)}
.cta-mascot{width:min(390px,100%);justify-self:center;border-radius:28px;}
.cta-copy{max-width:720px}
.cta-copy .btn{margin-top:12px}
.phone{display:inline-block;margin-left:16px;font-weight:900;color:var(--blue)}

footer{background:#06172b;color:#c6d0dc;padding:48px max(6vw,28px);display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:end;font-size:12px}
.footer-brand{display:flex;flex-direction:column;gap:5px}
.footer-brand .brand-name{color:#fff;font-size:40px}
.footer-info p{margin:5px 0}
.copyright{margin:0;color:#7f90a4}

.floating-wa{position:fixed;right:22px;bottom:22px;z-index:30;background:var(--green);color:#fff;border-radius:999px;padding:13px 17px;display:flex;gap:8px;align-items:center;box-shadow:0 12px 30px rgba(0,0,0,.22);font-size:13px}
.floating-wa span{font-size:19px}

.reveal{opacity:0;transform:translateY(18px);transition:.65s ease}
.reveal.visible{opacity:1;transform:none}

@media (max-width:900px){
  nav{display:none}.topbar{height:72px}.topbar .btn-small{margin-left:auto}.brand-sub{font-size:10px}
  .hero{grid-template-columns:1fr;padding-top:48px}.hero-visual{min-height:440px}
  .photo-card{width:82%;height:350px}.mascot-card{width:43%}
  .trust-strip{grid-template-columns:1fr 1fr}.trust-strip div:nth-child(2){border-right:0}
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .feature{grid-template-columns:1fr}.feature-image{height:380px}
  .secondary-inner{align-items:flex-start;flex-direction:column}
  .cta{grid-template-columns:.7fr 1.3fr}
  footer{grid-template-columns:1fr 1fr}.copyright{grid-column:1/-1}
}
@media (max-width:600px){
  .topbar{padding:0 16px}.brand{min-width:auto}.brand-name{font-size:29px}.brand-line{width:62px}
  .topbar .btn-small{padding:10px 12px;font-size:11px}
  .hero{padding:42px 18px 55px;gap:20px;min-height:auto}
  h1{font-size:52px}.hero-copy>p{font-size:16px}
  .hero-actions .btn{width:100%}.text-link{margin:auto}
  .hero-visual{min-height:360px}.photo-card{width:90%;height:290px;border-radius:20px}.mascot-card{width:47%;border-width:4px;border-radius:18px}.stamp{font-size:21px}
  .trust-strip{grid-template-columns:1fr 1fr;padding:0 12px}.trust-strip div{padding:18px 12px}.trust-strip b{font-size:17px}
  .section{padding:70px 18px}.services-grid{grid-template-columns:1fr}.section-heading h2,.feature h2,.secondary-service h2,.cta h2{font-size:42px}
  .feature{padding:70px 18px}.feature-image{height:300px}
  .secondary-service{padding:0 18px 70px}.secondary-inner{padding:30px 24px}.secondary-inner h2{font-size:36px}
  .cta{grid-template-columns:1fr;padding:55px 18px;text-align:center}.cta-mascot{width:230px}.phone{display:block;margin:15px 0 0}
  footer{grid-template-columns:1fr;padding:40px 18px 90px}
  .floating-wa{right:14px;bottom:14px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn{transition:none}}

/* V3 refinements */
.topbar .btn-small.btn-yellow{background:var(--yellow);color:var(--navy);box-shadow:0 8px 20px rgba(255,180,0,.24)}
.topbar .btn-small.btn-yellow:hover{background:#ffc329;box-shadow:0 11px 24px rgba(255,180,0,.32)}
.footer-brand-line{display:block;width:92px;height:5px;background:var(--yellow);border-radius:999px;margin:1px 0 4px}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .service-card:hover{transform:translateY(-6px)}
}
