:root {
  --primary: #0c2340;
  --primary-light: #163a5c;
  --primary-dark: #081525;
  --accent: #0d9ca6;
  --accent-light: #e0f5f7;
  --accent-dark: #0a7a82;
  --warm: #e8a838;
  --warm-dark: #cb8f2a;
  --bg: #f9fafb;
  --bg-white: #ffffff;
  --text-dark: #1f2937;
  --text-mid: #4b5563;
  --text-light: #9ca3af;
  --border: #e5e7eb;
  --footer-bg: #0a1828;
  --footer-text: #cbd5e1;
  --footer-heading: #f1f5f9;
  --shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.06);
  --shadow-md: 0 4px 12px rgba(0,0,0,.1);
  --radius: 8px;
  --max-w: 1200px;
  --nav-h: 72px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,sans-serif;background:var(--bg);color:var(--text-dark);line-height:1.6;font-size:16px}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--accent-dark)}
img{max-width:100%;display:block}
ul{list-style:none}

.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 24px}

/* ─── Navbar ─── */
.navbar{position:sticky;top:0;z-index:100;background:var(--bg-white);border-bottom:1px solid var(--border);height:var(--nav-h);display:flex;align-items:center}
.navbar .container{display:flex;align-items:center;justify-content:space-between;width:100%}
.navbar .logo{font-size:1.25rem;font-weight:700;color:var(--primary);display:flex;align-items:center;gap:8px}
.navbar .logo span{color:var(--accent)}
.navbar .nav-links{display:flex;align-items:center;gap:32px}
.navbar .nav-links a{color:var(--text-mid);font-size:.9rem;font-weight:500;transition:color .2s}
.navbar .nav-links a:hover,.navbar .nav-links a.active{color:var(--primary)}
.navbar .nav-links a.active{font-weight:600}
.navbar .btn-cta{background:var(--warm);color:var(--primary-dark)!important;padding:8px 20px;border-radius:var(--radius);font-weight:600;font-size:.875rem;transition:background .2s}
.navbar .btn-cta:hover{background:var(--warm-dark)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
.hamburger span{width:26px;height:2.5px;background:var(--primary);border-radius:2px;transition:.3s}

@media(max-width:768px){
  .hamburger{display:flex}
  .navbar .nav-links{display:none;position:absolute;top:var(--nav-h);left:0;right:0;background:var(--bg-white);flex-direction:column;padding:16px 24px;gap:16px;border-bottom:1px solid var(--border);box-shadow:var(--shadow-md)}
  .navbar .nav-links.open{display:flex}
  .navbar .btn-cta{display:inline-block;text-align:center}
}

/* ─── Utility ─── */
.page-hero{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);color:#fff;padding:80px 0 64px;text-align:center}
.page-hero h1{font-size:2.5rem;font-weight:700;margin-bottom:12px}
.page-hero p{font-size:1.1rem;opacity:.85;max-width:600px;margin:0 auto}
@media(max-width:768px){.page-hero{padding:56px 0 40px}.page-hero h1{font-size:1.75rem}}

.section{padding:80px 0}
.section-title{font-size:2rem;font-weight:700;color:var(--primary);text-align:center;margin-bottom:48px}
@media(max-width:768px){.section{padding:48px 0}.section-title{font-size:1.5rem;margin-bottom:32px}}

.cta-strip{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);color:#fff;text-align:center;padding:64px 24px}
.cta-strip h2{font-size:1.75rem;margin-bottom:12px}
.cta-strip p{margin-bottom:24px;opacity:.9}
.cta-strip .btn-primary{background:var(--bg-white);color:var(--accent-dark)!important}
.cta-strip .btn-primary:hover{background:var(--accent-light)}

/* ─── Buttons ─── */
.btn{display:inline-block;padding:12px 28px;border-radius:var(--radius);font-weight:600;font-size:.95rem;transition:all .25s;cursor:pointer;border:none}
.btn-primary{background:var(--warm);color:var(--primary-dark)!important}
.btn-primary:hover{background:var(--warm-dark);transform:translateY(-1px)}
.btn-outline{background:transparent;border:2px solid var(--bg-white);color:#fff!important}
.btn-outline:hover{background:var(--bg-white);color:var(--primary)!important}
.btn-accent{background:var(--accent);color:#fff!important}
.btn-accent:hover{background:var(--accent-dark);transform:translateY(-1px)}

/* ─── Hero ─── */
.hero{background:linear-gradient(135deg,var(--primary) 0%,#0f2f4e 50%,var(--primary-light) 100%);color:#fff;padding:120px 0 100px;position:relative;overflow:hidden}
.hero::after{content:'';position:absolute;bottom:-60px;right:-60px;width:400px;height:400px;border-radius:50%;background:rgba(13,156,166,.08);pointer-events:none}
.hero .container{position:relative;z-index:1}
.hero h1{font-size:3rem;font-weight:800;line-height:1.2;max-width:720px;margin-bottom:20px}
.hero h1 span{color:var(--accent)}
.hero p{font-size:1.15rem;opacity:.88;max-width:560px;margin-bottom:36px;line-height:1.7}
.hero-btns{display:flex;gap:16px;flex-wrap:wrap}
@media(max-width:768px){
  .hero{padding:72px 0 64px}
  .hero h1{font-size:2rem}
  .hero p{font-size:1rem}
  .hero-btns{flex-direction:column;align-items:flex-start}
}

/* ─── Value Props ─── */
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.val-card{background:var(--bg-white);padding:36px 28px;border-radius:var(--radius);box-shadow:var(--shadow);border-top:3px solid var(--accent);transition:box-shadow .3s}
.val-card:hover{box-shadow:var(--shadow-md)}
.val-card .icon{font-size:2rem;margin-bottom:12px}
.val-card h3{font-size:1.15rem;color:var(--primary);margin-bottom:8px}
.val-card p{font-size:.9rem;color:var(--text-mid);line-height:1.65}
@media(max-width:768px){.value-grid{grid-template-columns:1fr;gap:20px}}

/* ─── Services Grid ─── */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.service-card{background:var(--bg-white);padding:32px 24px;border-radius:var(--radius);box-shadow:var(--shadow);transition:box-shadow .3s,transform .3s;text-align:center}
.service-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}
.service-card .icon{font-size:2.5rem;margin-bottom:16px;display:block}
.service-card h3{font-size:1.1rem;color:var(--primary);margin-bottom:8px}
.service-card p{font-size:.88rem;color:var(--text-mid);line-height:1.6}
@media(max-width:768px){.services-grid{grid-template-columns:1fr;gap:20px}}

/* ─── About Strip ─── */
.about-strip{background:var(--bg-white);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.about-strip .container{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.about-strip h2{font-size:1.75rem;color:var(--primary);margin-bottom:16px}
.about-strip p{color:var(--text-mid);margin-bottom:12px;line-height:1.7}
.about-strip .btn{margin-top:8px}
@media(max-width:768px){.about-strip .container{grid-template-columns:1fr;gap:24px}}

/* ─── Credentials ─── */
.credentials{background:var(--accent-light);padding:40px 0;text-align:center}
.credentials .container{display:flex;justify-content:center;align-items:center;gap:48px;flex-wrap:wrap}
.credentials .item{display:flex;align-items:center;gap:8px;font-size:.95rem;color:var(--text-dark);font-weight:500}
.credentials .item .label{color:var(--text-mid);font-weight:400}
@media(max-width:768px){.credentials .container{gap:16px;flex-direction:column}}

/* ─── Content Pages ─── */
.content-section{padding:64px 0}
.content-section .container{max-width:860px}
.content-section h2{font-size:1.5rem;color:var(--primary);margin:32px 0 12px}
.content-section h3{font-size:1.15rem;color:var(--primary);margin:24px 0 8px}
.content-section p{color:var(--text-mid);margin-bottom:14px;line-height:1.7}
.content-section ul{padding-left:24px;margin-bottom:14px}
.content-section ul li{list-style:disc;color:var(--text-mid);margin-bottom:6px;line-height:1.6}

/* ─── Contact ─── */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.contact-info h2{font-size:1.5rem;color:var(--primary);margin-bottom:16px}
.contact-info p{color:var(--text-mid);margin-bottom:20px;line-height:1.7}
.contact-detail{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.contact-detail .icon{font-size:1.25rem;flex-shrink:0}
.contact-detail .detail-label{font-size:.82rem;color:var(--text-light);text-transform:uppercase;letter-spacing:.5px}
.contact-detail .detail-value{font-size:1rem;color:var(--text-dark)}
.contact-form{background:var(--bg-white);padding:36px;border-radius:var(--radius);box-shadow:var(--shadow)}
.contact-form h3{font-size:1.15rem;color:var(--primary);margin-bottom:20px}
.contact-form label{display:block;font-size:.88rem;font-weight:600;color:var(--text-dark);margin-bottom:4px}
.contact-form input,.contact-form textarea{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:.95rem;font-family:inherit;margin-bottom:16px;transition:border .2s}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent)}
.contact-form textarea{min-height:120px;resize:vertical}
.contact-form .btn{width:100%}
@media(max-width:768px){.contact-grid{grid-template-columns:1fr;gap:32px}}

/* ─── Footer ─── */
.footer{background:var(--footer-bg);color:var(--footer-text);padding:56px 0 0}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:40px;margin-bottom:40px}
.footer-col h4{color:var(--footer-heading);font-size:1rem;font-weight:600;margin-bottom:16px}
.footer-col p{font-size:.88rem;line-height:1.65;margin-bottom:8px}
.footer-col ul li{margin-bottom:8px}
.footer-col ul li a{color:var(--footer-text);font-size:.88rem;transition:color .2s}
.footer-col ul li a:hover{color:var(--accent)}
.footer .abn{font-size:.82rem;color:var(--text-light);margin-top:8px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:20px 0;display:flex;justify-content:space-between;align-items:center;font-size:.82rem;color:var(--text-light);flex-wrap:wrap;gap:8px}
@media(max-width:768px){
  .footer-grid{grid-template-columns:1fr 1fr;gap:28px}
  .footer-bottom{flex-direction:column;text-align:center}
}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}
