:root{
  --navy:#0E2A47;
  --navy-dark:#071B30;
  --blue:#1D4B7C;
  --orange:#D9903F;
  --orange-dark:#BE7A2E;
  --green:#2E9E6B;
  --text:#1B2430;
  --gray:#6B7684;
  --gray-light:#9FB3C8;
  --border:#E3E7EC;
  --bg-light:#F4F6F9;
  --white:#FFFFFF;
}

*{box-sizing:border-box;}
body{margin:0;background:var(--white);color:var(--text);font-family:'Inter',sans-serif;overflow-x:hidden;}
a{color:var(--blue);text-decoration:none;}
a:hover{color:var(--orange);}
::selection{background:var(--orange);color:#fff;}
input,button{font-family:'Inter',sans-serif;}
button{cursor:pointer;}
h1,h2,h3{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:0.03em;margin:0;}
img{max-width:100%;display:block;}

@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}

.container{max-width:1280px;margin:0 auto;padding:0 clamp(20px,5vw,64px);}
.container-narrow{max-width:1200px;margin:0 auto;padding:0 clamp(20px,5vw,64px);}

/* HEADER */
.site-header{position:sticky;top:0;z-index:200;background:var(--navy);display:flex;align-items:center;justify-content:space-between;padding:18px clamp(20px,4vw,48px);flex-wrap:wrap;gap:20px;border-bottom:1px solid var(--blue);}
.logo{font-family:'Oswald',sans-serif;font-size:24px;font-weight:700;letter-spacing:0.04em;color:var(--white);text-transform:uppercase;}
.main-nav{display:flex;gap:32px;flex-wrap:wrap;}
.main-nav a{color:#C7D2DE;font-size:15px;font-weight:600;padding-bottom:4px;}
.main-nav a.active{color:var(--white);border-bottom:2px solid var(--orange);}
.header-right{display:flex;align-items:center;gap:20px;}
.phone-link{color:var(--white);font-size:16px;font-weight:600;white-space:nowrap;}
.btn{display:inline-block;background:var(--orange);color:var(--white);font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:0.03em;padding:12px 24px;white-space:nowrap;border:none;transition:background .15s;}
.btn:hover{background:var(--orange-dark);color:var(--white);}
.btn-lg{font-size:15px;padding:16px 32px;}
.btn-outline{background:transparent;color:var(--white);border:1px solid var(--white);}
.btn-outline:hover{background:rgba(255,255,255,0.12);color:var(--white);}
.btn-navy{background:var(--navy);}
.btn-navy:hover{background:var(--navy-dark);}
.btn-block{display:block;text-align:center;width:100%;}

/* PAGE HEADER (inner pages) */
.page-hero{background:var(--navy);padding:56px clamp(20px,5vw,64px);}
.breadcrumb{color:var(--gray-light);font-size:13px;margin-bottom:12px;}
.page-hero h1{color:var(--white);font-size:clamp(28px,4vw,44px);}
.page-hero-rule{width:56px;height:3px;background:var(--white);margin-top:16px;}
.page-hero-sub{color:var(--gray-light);font-size:15px;margin-top:16px;max-width:600px;}

/* HERO (home) */
.hero{position:relative;min-height:clamp(560px,80vh,760px);display:flex;align-items:center;background:repeating-linear-gradient(135deg,#2C4A68,#2C4A68 14px,#23405C 14px,#23405C 28px);}
.hero-overlay{position:absolute;inset:0;background:rgba(14,42,71,0.72);}
.hero-photo-label{position:absolute;top:24px;left:24px;font-family:monospace;font-size:12px;color:rgba(255,255,255,0.6);z-index:1;}
.hero-inner{position:relative;z-index:2;max-width:820px;padding:60px clamp(20px,5vw,64px);}
.hero h1{color:var(--white);font-size:clamp(32px,4.5vw,56px);line-height:1.15;margin:0 0 20px 0;}
.hero-rule{width:64px;height:3px;background:var(--white);margin:0 0 20px 0;}
.hero p.lead{color:#DCE4EE;font-size:19px;line-height:1.6;margin:0 0 28px 0;max-width:600px;}
.hero-checks{display:flex;gap:28px;flex-wrap:wrap;margin-bottom:32px;}
.hero-check{display:flex;align-items:center;gap:10px;color:var(--white);font-size:15px;font-weight:600;}
.hero-check span{color:var(--green);font-size:18px;}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:36px;}
.hero-form{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.25);padding:20px;display:flex;gap:12px;flex-wrap:wrap;align-items:center;max-width:520px;}
.hero-form span{color:var(--white);font-size:14px;font-weight:600;flex:1;min-width:220px;}
.hero-form input{padding:12px 14px;border:1px solid var(--blue);background:var(--white);font-size:14px;min-width:180px;}
.success-box{background:rgba(46,158,107,0.15);border:1px solid var(--green);padding:20px;max-width:520px;color:var(--white);font-size:15px;font-weight:600;}
.success-box.light{background:rgba(46,158,107,0.1);color:var(--green);border:1px solid var(--green);text-align:center;padding:24px;}
.success-box.light .sub{color:var(--gray);font-size:14px;font-weight:400;margin-top:8px;}

/* STATS */
.stats{background:var(--bg-light);padding:64px clamp(20px,5vw,64px);}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px;max-width:1200px;margin:0 auto;text-align:center;}
.stat-num{font-family:'Oswald',sans-serif;font-size:clamp(36px,4vw,52px);font-weight:700;color:var(--navy);}
.stat-label{color:var(--gray);font-size:15px;margin-top:8px;}

/* SECTION HEADINGS */
.section{padding:80px clamp(20px,5vw,64px);}
.section-head{text-align:center;margin-bottom:48px;}
.eyebrow{color:var(--orange);font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:12px;}
.section-head h2{font-size:clamp(26px,3vw,38px);color:var(--navy);}
.section-rule{width:48px;height:3px;background:var(--navy);margin:16px auto 0;}

/* SERVICES */
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;}
.service-card{border:1px solid var(--border);padding:28px;background:var(--white);}
.service-icon{width:48px;height:48px;background:var(--blue);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:20px;margin-bottom:20px;}
.service-card h3{font-size:19px;color:var(--navy);margin:0 0 8px 0;}
.service-price{color:var(--orange);font-weight:700;font-size:16px;margin-bottom:12px;}
.service-card p{color:var(--gray);font-size:15px;line-height:1.6;margin:0 0 16px 0;}
.service-link{font-size:14px;font-weight:600;}

/* PACKAGES */
.packages{background:var(--bg-light);padding:80px clamp(20px,5vw,64px);}
.packages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:0;max-width:1100px;margin:0 auto;border:1px solid var(--border);}
.package{background:var(--white);padding:40px 32px;border-right:1px solid var(--border);position:relative;}
.package:last-child{border-right:none;}
.package.featured{background:var(--navy);}
.package-badge{position:absolute;top:0;left:0;right:0;background:var(--orange);color:var(--white);text-align:center;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;padding:8px;}
.package h3{font-size:22px;color:var(--navy);margin:0 0 4px 0;}
.package.featured h3{color:var(--white);margin-top:28px;}
.package-note{color:var(--gray);font-size:13px;margin-bottom:20px;}
.package.featured .package-note{color:var(--gray-light);}
.package-price{font-family:'Oswald',sans-serif;font-size:36px;font-weight:700;color:var(--navy);margin-bottom:4px;}
.package.featured .package-price{color:var(--white);}
.package-price span{font-size:16px;font-weight:400;color:var(--gray);}
.package.featured .package-price span{color:var(--gray-light);}
.package-term{color:var(--gray);font-size:14px;margin-bottom:24px;}
.package.featured .package-term{color:var(--gray-light);}
.package-features{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;}
.package-features div{display:flex;gap:10px;font-size:14px;color:var(--text);}
.package.featured .package-features div{color:var(--white);}
.package-features span{color:var(--green);}

/* PORTFOLIO */
.filter-bar{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:36px;}
.filter-btn{background:var(--white);color:var(--navy);border:1px solid var(--navy);font-size:13px;font-weight:600;padding:10px 20px;}
.filter-btn.active{background:var(--navy);color:var(--white);}
.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:56px;}
.portfolio-card{display:block;border:1px solid var(--border);cursor:pointer;background:var(--white);}
.portfolio-photo{height:200px;background:repeating-linear-gradient(135deg,#E3E7EC,#E3E7EC 10px,#D7DCE3 10px,#D7DCE3 20px);display:flex;align-items:center;justify-content:center;font-family:monospace;font-size:12px;color:var(--gray);}
.portfolio-card-body{padding:16px;}
.portfolio-card-title{font-weight:700;color:var(--navy);font-size:15px;margin-bottom:6px;}
.portfolio-card-meta{color:var(--gray);font-size:13px;}
.hidden{display:none !important;}

.ba-box{border:1px solid var(--border);padding:36px;max-width:900px;margin:0 auto;background:var(--white);}
.ba-box.on-bg{background:var(--bg-light);}
.ba-title{text-align:center;font-size:14px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:20px;}
.ba-frame{position:relative;height:320px;overflow:hidden;user-select:none;background:var(--white);}
.ba-before{position:absolute;inset:0;background:repeating-linear-gradient(135deg,#D7DCE3,#D7DCE3 10px,#C3CBD6 10px,#C3CBD6 20px);display:flex;align-items:center;justify-content:center;font-family:monospace;font-size:13px;color:var(--gray);}
.ba-after{position:absolute;inset:0;background:repeating-linear-gradient(135deg,#EAD9C3,#EAD9C3 10px,#DEC7A6 10px,#DEC7A6 20px);display:flex;align-items:center;justify-content:center;font-family:monospace;font-size:13px;color:var(--gray);}
.ba-handle{position:absolute;top:0;bottom:0;width:3px;background:var(--white);}
.ba-slider{width:100%;margin-top:16px;accent-color:var(--orange);}

.portfolio-detail{border:1px solid var(--border);padding:36px;background:var(--bg-light);}
.portfolio-detail-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;}
.portfolio-detail-head h2{font-size:22px;color:var(--navy);}
.close-btn{background:none;border:none;font-size:20px;color:var(--gray);}
.detail-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:28px;}
.detail-photo{height:100px;background:repeating-linear-gradient(135deg,#E3E7EC,#E3E7EC 8px,#D7DCE3 8px,#D7DCE3 16px);font-family:monospace;font-size:10px;color:var(--gray);display:flex;align-items:center;justify-content:center;}

/* PROCESS */
.process{background:var(--bg-light);padding:80px clamp(20px,5vw,64px);}
.process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:24px;max-width:1200px;margin:0 auto;}
.process-step{text-align:center;}
.process-num{width:56px;height:56px;border-radius:50%;background:var(--navy);color:var(--white);display:flex;align-items:center;justify-content:center;font-family:'Oswald',sans-serif;font-size:20px;font-weight:700;margin:0 auto 16px;}
.process-num.last{background:var(--orange);}
.process-step-title{font-weight:700;font-size:15px;color:var(--navy);margin-bottom:6px;}
.process-step-desc{color:var(--gray);font-size:13px;line-height:1.5;}

/* CALCULATOR */
.calc-section{background:var(--navy);padding:80px clamp(20px,5vw,64px);}
.calc-head{text-align:center;margin-bottom:16px;}
.calc-head h2{color:var(--white);}
.calc-box{max-width:640px;margin:40px auto 0;background:var(--white);padding:40px;}
.calc-progress{display:flex;gap:6px;margin-bottom:32px;}
.calc-progress div{flex:1;height:5px;background:var(--border);}
.calc-progress div.done{background:var(--orange);}
.calc-step-label{color:var(--gray);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:8px;}
.calc-question{font-size:22px;color:var(--navy);margin:0 0 24px 0;}
.calc-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:32px;}
.calc-opt{padding:16px;border:2px solid var(--border);background:var(--white);font-size:14px;font-weight:600;color:var(--navy);}
.calc-opt.selected{border-color:var(--orange);background:#FBF1E6;}
.calc-nav{display:flex;justify-content:space-between;}
.calc-back{background:none;border:none;color:var(--gray);font-size:14px;font-weight:600;}
.calc-back:disabled{opacity:0.4;cursor:default;}
.calc-forward{background:var(--orange);color:var(--white);border:none;font-weight:700;font-size:14px;padding:12px 28px;text-transform:uppercase;}
.calc-result-label{color:var(--gray);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:12px;}
.calc-result-price{font-family:'Oswald',sans-serif;font-size:32px;font-weight:700;color:var(--navy);}
.calc-result-term{color:var(--gray);font-size:15px;margin-top:8px;}
.calc-result-head{text-align:center;margin-bottom:28px;}

/* GENERIC FORM */
.form-col{display:flex;flex-direction:column;gap:12px;}
.form-col input{padding:14px;border:1px solid var(--border);font-size:14px;}
.form-col .btn{border:none;}

/* TRUST */
.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;}
.trust-item{display:flex;gap:16px;}
.trust-num{color:var(--orange);font-size:26px;font-weight:700;font-family:'Oswald',sans-serif;}
.trust-title{font-weight:700;color:var(--navy);font-size:16px;margin-bottom:6px;}
.trust-desc{color:var(--gray);font-size:14px;line-height:1.6;}

/* TEAM */
.team{background:var(--bg-light);padding:80px clamp(20px,5vw,64px);}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;max-width:1000px;margin:0 auto;}
.team-card{background:var(--white);text-align:center;}
.team-photo{height:220px;background:repeating-linear-gradient(135deg,#E3E7EC,#E3E7EC 10px,#D7DCE3 10px,#D7DCE3 20px);display:flex;align-items:center;justify-content:center;font-family:monospace;font-size:12px;color:var(--gray);}
.team-info{padding:20px;}
.team-name{font-weight:700;color:var(--navy);font-size:16px;}
.team-role{color:var(--orange);font-size:13px;font-weight:600;margin:4px 0;}
.team-exp{color:var(--gray);font-size:13px;}

/* REVIEWS */
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:40px;}
.review-card{border:1px solid var(--border);padding:28px;}
.review-head{display:flex;gap:12px;align-items:center;margin-bottom:16px;}
.review-avatar{width:48px;height:48px;border-radius:50%;background:repeating-linear-gradient(135deg,#E3E7EC,#E3E7EC 6px,#D7DCE3 6px,#D7DCE3 12px);}
.review-name{font-weight:700;color:var(--navy);font-size:14px;}
.review-meta{color:var(--gray);font-size:12px;}
.review-text{color:var(--text);font-size:14px;line-height:1.6;margin:0 0 12px 0;}
.review-link{font-size:13px;font-weight:600;}
.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;max-width:900px;margin:0 auto;}
.video-tile{height:160px;background:repeating-linear-gradient(135deg,#2C4A68,#2C4A68 12px,#23405C 12px,#23405C 24px);display:flex;align-items:center;justify-content:center;font-family:monospace;font-size:12px;color:#DCE4EE;}

/* FAQ */
.faq{background:var(--bg-light);padding:80px clamp(20px,5vw,64px);}
.faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
.faq-item{background:var(--white);border:1px solid var(--border);}
.faq-question{width:100%;text-align:left;padding:20px 24px;background:none;border:none;display:flex;justify-content:space-between;align-items:center;font-size:15px;font-weight:600;color:var(--navy);}
.faq-answer{padding:0 24px 20px;color:var(--gray);font-size:14px;line-height:1.6;}

/* PRICE TABLE */
.price-table-section{background:var(--bg-light);padding:64px clamp(20px,5vw,64px);}
.price-table-wrap{max-width:900px;margin:0 auto;}
.price-table-wrap h2{font-size:clamp(24px,3vw,32px);color:var(--navy);margin:0 0 24px 0;text-align:center;}
.price-table{display:flex;flex-direction:column;gap:1px;background:var(--border);}
.price-row{display:flex;justify-content:space-between;background:var(--white);padding:16px 24px;}
.price-row .name{font-size:15px;color:var(--text);}
.price-row .val{font-size:15px;font-weight:700;color:var(--orange);}

/* FINAL CTA */
.final-cta{background:var(--navy-dark);padding:80px clamp(20px,5vw,64px);text-align:center;}
.final-cta h2{color:var(--white);font-size:clamp(26px,3.5vw,42px);margin:0 0 32px 0;}
.final-cta-form{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;max-width:720px;margin:0 auto;}
.final-cta-form input{padding:16px;border:1px solid var(--blue);background:var(--navy);color:var(--white);font-size:14px;flex:1;min-width:160px;}
.cta-strip{background:var(--navy-dark);padding:64px clamp(20px,5vw,64px);text-align:center;}
.cta-strip h2{color:var(--white);font-size:clamp(24px,3vw,34px);margin:0 0 24px 0;}

/* CONTACTS */
.contacts{background:var(--bg-light);padding:80px clamp(20px,5vw,64px);}
.contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:1200px;margin:0 auto;}
.map-placeholder{height:360px;background:repeating-linear-gradient(135deg,#E3E7EC,#E3E7EC 10px,#D7DCE3 10px,#D7DCE3 20px);display:flex;align-items:center;justify-content:center;font-family:monospace;font-size:13px;color:var(--gray);}
.contacts h2{font-size:28px;color:var(--navy);margin:0 0 24px 0;}
.contacts-list{display:flex;flex-direction:column;gap:16px;font-size:15px;}
.contacts-list .label{color:var(--gray);}
.contacts-list a,.contacts-list strong{font-weight:600;}

/* FOOTER */
.site-footer{background:var(--navy-dark);padding:56px clamp(20px,5vw,64px) 32px;}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px;max-width:1200px;margin:0 auto 32px;}
.footer-brand{font-family:'Oswald',sans-serif;font-size:20px;font-weight:700;letter-spacing:0.04em;color:var(--white);text-transform:uppercase;margin-bottom:12px;}
.footer-desc{color:#8494A6;font-size:14px;line-height:1.6;}
.footer-col-title{color:var(--white);font-weight:700;font-size:14px;text-transform:uppercase;margin-bottom:16px;}
.footer-links{display:flex;flex-direction:column;gap:10px;}
.footer-links a{color:#8494A6;font-size:14px;}
.footer-form{display:flex;flex-direction:column;gap:10px;}
.footer-form input{padding:12px;border:1px solid var(--blue);background:var(--navy);color:var(--white);font-size:13px;}
.footer-form .btn{font-size:13px;padding:12px;}
.footer-success{color:var(--green);font-size:13px;font-weight:600;}
.footer-bottom{border-top:1px solid var(--blue);padding-top:24px;text-align:center;color:#5A6B7F;font-size:13px;}
.footer-bottom-simple{background:var(--navy-dark);padding:32px clamp(20px,5vw,64px);text-align:center;border-top:1px solid var(--blue);}

/* WHATSAPP FLOAT */
.wa-float{position:fixed;bottom:24px;right:24px;z-index:300;width:56px;height:56px;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:24px;box-shadow:0 4px 16px rgba(0,0,0,0.3);}

/* EXIT MODAL */
.modal-overlay{position:fixed;inset:0;background:rgba(7,27,48,0.75);z-index:400;display:flex;align-items:center;justify-content:center;padding:20px;}
.modal-box{background:var(--white);max-width:440px;width:100%;padding:40px;position:relative;text-align:center;}
.modal-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:20px;color:var(--gray);}
.modal-title{color:var(--orange);font-family:'Oswald',sans-serif;font-size:26px;font-weight:700;text-transform:uppercase;margin-bottom:12px;}
.modal-text{color:var(--text);font-size:15px;line-height:1.6;margin:0 0 24px 0;}

@media(max-width:720px){
  .contacts-grid{grid-template-columns:1fr;}
}
