:root{
  --ct17-navy:#052a43; --ct17-blue:#0b5f9e; --ct17-teal:#0b8f88; --ct17-green:#2f8f3d;
  --ct17-lime:#8acb4b; --ct17-gold:#e7ad42; --ct17-sky:#eaf6fb; --ct17-mist:#f5fbf8;
  --ct17-shadow:0 18px 48px rgba(3,42,67,.12);
}
html{scroll-behavior:smooth}
body{background:
 radial-gradient(circle at 8% 2%,rgba(11,95,158,.13),transparent 26%),
 radial-gradient(circle at 92% 16%,rgba(138,203,75,.13),transparent 24%),
 radial-gradient(circle at 78% 58%,rgba(11,143,136,.09),transparent 28%),
 linear-gradient(180deg,#f8fcfe 0%,#f3faf8 45%,#fff 100%);}
section::before,.section::before{background:linear-gradient(120deg,rgba(11,95,158,.025),rgba(11,143,136,.025) 55%,rgba(231,173,66,.025));}
.topbar{background:linear-gradient(90deg,var(--ct17-navy),#073d61 55%,#087d75)!important}
.nav{box-shadow:0 8px 28px rgba(3,42,67,.10)}
.nav .brand-text span,.eyebrow,.ct-section-kicker{color:var(--ct17-teal)!important}
.nav-cta,.btn-primary{background:linear-gradient(135deg,#087f70,#2f8f3d)!important;box-shadow:0 10px 24px rgba(8,127,112,.22)}
.nav-cta:hover,.btn-primary:hover{filter:brightness(1.06);transform:translateY(-2px)}
.hero,.page-header{isolation:isolate;overflow:hidden}
.hero::after,.page-header::after{content:""!important;display:block!important;position:absolute;inset:0!important;height:auto!important;z-index:-1!important;pointer-events:none;background:
 radial-gradient(circle at 82% 22%,rgba(138,203,75,.28),transparent 18%),
 radial-gradient(circle at 72% 76%,rgba(11,143,136,.22),transparent 24%),
 linear-gradient(105deg,rgba(4,31,49,.94) 0%,rgba(5,42,67,.82) 43%,rgba(7,83,93,.35) 72%,rgba(8,127,112,.12) 100%)!important;transform:none!important}
.hero::before{background:linear-gradient(90deg,rgba(3,31,48,.36),transparent 55%)!important}
.hero h1,.page-header h1{letter-spacing:.02em;text-shadow:0 8px 32px rgba(0,0,0,.28)}
.hero-eyebrow{color:#b7e877!important;letter-spacing:.16em}
.hero .btn-outline{border-color:rgba(255,255,255,.75);background:rgba(255,255,255,.08);backdrop-filter:blur(8px)}
.page-header{min-height:420px!important;border-bottom:5px solid transparent!important;border-image:linear-gradient(90deg,var(--ct17-blue),var(--ct17-teal),var(--ct17-lime)) 1!important;background-color:#073b57!important}
.page-header .container{position:relative;z-index:2}
.page-header p{color:#e3f3f5!important;max-width:760px!important}
.page-header h1::after{content:"";display:block;width:90px;height:4px;border-radius:4px;margin-top:18px;background:linear-gradient(90deg,var(--ct17-lime),var(--ct17-gold),transparent)}
.card,.product-card,.service-card,.buyer-card,.premium-point{border:1px solid rgba(11,95,158,.10)!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(244,251,249,.92))!important;box-shadow:var(--ct17-shadow)!important}
.card:hover,.product-card:hover,.service-card:hover,.buyer-card:hover,.premium-point:hover{border-color:rgba(11,143,136,.28)!important;box-shadow:0 24px 58px rgba(3,42,67,.18)!important;transform:translateY(-6px)}
.ct-portfolio-intro{padding-top:68px!important;background:linear-gradient(135deg,rgba(234,246,251,.9),rgba(243,250,247,.82))}
.ct-section-kicker{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;text-align:center}
.ct-section-title{max-width:850px;margin:10px auto 0;text-align:center;color:var(--ct17-navy);font-size:clamp(30px,4vw,48px)}
.ct-section-copy{max-width:860px;margin:14px auto 32px;text-align:center;color:#567080;line-height:1.8}
.premium-points-grid{gap:18px!important}
.premium-point{position:relative;overflow:hidden;border-radius:18px!important}
.premium-point::after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-35px;top:-35px;background:linear-gradient(135deg,rgba(11,143,136,.13),rgba(138,203,75,.17));}
.premium-point strong{color:var(--ct17-blue)!important}
.metric-strip,.stats,.trust-strip{background:linear-gradient(105deg,#f6fbfb,#e8f6f1 45%,#eef8fb)!important;border:1px solid rgba(11,143,136,.10);box-shadow:0 14px 35px rgba(3,42,67,.08)}
.metric-strip strong,.stat-number{color:var(--ct17-navy)!important}
.check-list li::before{color:var(--ct17-green)!important}
footer,.footer{background:linear-gradient(105deg,#031f31,#063b5c 55%,#08756f)!important}
input,select,textarea{border-color:rgba(11,95,158,.18)!important;background:rgba(255,255,255,.94)!important}
input:focus,select:focus,textarea:focus{border-color:var(--ct17-teal)!important;box-shadow:0 0 0 4px rgba(11,143,136,.10)!important}
.form-group.full textarea{min-height:150px}
.upload-box{border-color:rgba(11,143,136,.28)!important;background:linear-gradient(135deg,#f7fcfb,#eef8fb)!important}
@media(max-width:768px){.page-header{min-height:340px!important}.page-header h1::after{margin-left:auto;margin-right:auto}.ct-portfolio-intro{padding-top:42px!important}.ct-section-copy{padding:0 10px}.premium-points-grid{gap:12px!important}}


/* V19 international cinematic upgrade */
.hero-cinematic{position:relative;overflow:hidden;min-height:760px;display:flex;align-items:center}
.hero-cinematic:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 28%,rgba(33,157,123,.22),transparent 32%),linear-gradient(90deg,rgba(1,20,32,.94) 0%,rgba(3,35,48,.80) 45%,rgba(4,27,32,.30) 100%);z-index:1}
.hero-cinematic .hero-bg{transform:scale(1.03);filter:saturate(1.15) contrast(1.06)}
.hero-cinematic .container{position:relative;z-index:2}
.hero-content{max-width:800px}
.hero-capability-rail{margin-top:38px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-width:900px;padding:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:18px;backdrop-filter:blur(10px)}
.hero-capability-rail div{padding:8px 12px;border-right:1px solid rgba(255,255,255,.15)}
.hero-capability-rail div:last-child{border-right:0}.hero-capability-rail strong{display:block;color:#9be15d;font-size:20px;letter-spacing:.03em}.hero-capability-rail span{display:block;color:#e7f0f1;font-size:11px;line-height:1.35;margin-top:3px}
.hero-wa-picker{position:relative;display:inline-block}.hero-wa-picker .hero-wa-menu{display:none;position:absolute;top:calc(100% + 10px);left:0;min-width:290px;padding:9px;background:rgba(5,35,43,.96);border:1px solid rgba(133,221,107,.32);border-radius:14px;box-shadow:0 18px 45px rgba(0,0,0,.30);z-index:30}.hero-wa-picker .hero-wa-menu.open{display:block}.hero-wa-picker .hero-wa-menu a{display:block;color:#fff;text-decoration:none;padding:11px 13px;border-radius:9px;font-size:13px;font-weight:700}.hero-wa-picker .hero-wa-menu a:hover{background:rgba(155,225,93,.14);color:#b8ef80}
.ct-products-capabilities{background:linear-gradient(135deg,#f4fbf8 0%,#eef6fa 48%,#fff 100%)}
@media(max-width:800px){.hero-cinematic{min-height:720px;align-items:flex-start;padding-top:90px}.hero-capability-rail{grid-template-columns:repeat(2,1fr);max-width:100%;margin-top:28px}.hero-capability-rail div:nth-child(2){border-right:0}.hero-capability-rail div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.15)}.hero-wa-picker{width:100%}.hero-wa-picker .hero-whatsapp{width:100%}.hero-wa-picker .hero-wa-menu{left:0;right:0;min-width:0}.hero-cinematic .hero-content{max-width:100%}}

/* V20 visual subcategory portfolio */
.product-core-section { position:relative; }
.product-core-head { display:grid; grid-template-columns:1.05fr .95fr; gap:44px; align-items:end; margin-bottom:34px; }
.product-core-head h2 { margin-top:8px; letter-spacing:-.03em; }
.product-core-head > p { color:var(--muted); font-size:16px; line-height:1.75; margin:0; }
.product-subgrid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; }
.product-subcard { background:#fff; border:1px solid #e4ebf0; border-radius:16px; overflow:hidden; box-shadow:0 10px 30px rgba(12,43,77,.07); transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.product-subcard:hover { transform:translateY(-7px); box-shadow:0 20px 48px rgba(12,43,77,.14); border-color:#b9c9d5; }
.product-subimage { aspect-ratio:1.42/1; overflow:hidden; background:#f4f6f7; }
.product-subimage img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .55s ease, filter .35s ease; }
.product-subcard:hover .product-subimage img { transform:scale(1.07); filter:saturate(1.04); }
.product-subbody { padding:14px 15px 16px; }
.product-subbody > span { display:inline-flex; font-size:10px; font-weight:800; letter-spacing:.12em; color:#6a9c4d; margin-bottom:6px; }
.product-subbody h3 { font-size:15px; line-height:1.25; margin:0; color:#0c2b4d; }
.product-subbody p { font-size:11px; line-height:1.4; color:var(--muted); margin:7px 0 0; }
.section-alt .product-subcard { background:#fff; }
@media (max-width:1000px){ .product-subgrid{grid-template-columns:repeat(3,minmax(0,1fr));}.product-core-head{grid-template-columns:1fr;} }
@media (max-width:650px){ .product-subgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;} .product-subbody{padding:11px 12px 13px}.product-subbody h3{font-size:13px}.product-subbody p{font-size:10px}.product-core-head{gap:12px;margin-bottom:22px}.product-core-head > p{font-size:14px;} }
