
:root{--navy:#102b46;--teal:#0b8793;--aqua:#dff6f6;--coral:#f47c6b;--gold:#f2bc61;--ink:#183247;--muted:#607588;--paper:#f7fbfc;--white:#fff;--line:#e2edf0;--shadow:0 18px 50px rgba(16,43,70,.10);--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Inter,Arial,sans-serif}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:white;padding:10px;z-index:1000}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;letter-spacing:-.04em;color:var(--navy);line-height:1.1}.brand-logo{display:block;width:158px;max-height:70px;object-fit:contain}.brand-mark{width:45px;height:45px;border-radius:15px;background:linear-gradient(135deg,var(--teal),#43c5c7);display:grid;place-items:center;color:white;font-size:18px;box-shadow:0 7px 18px #0b879333}.brand small{display:block;color:var(--teal);font-size:10px;letter-spacing:.15em;margin-top:5px}.links{display:flex;align-items:center;gap:22px}.links a{text-decoration:none;font-size:14px;font-weight:700;color:#39556b}.links a:hover,.links a[aria-current=page]{color:var(--teal)}.links .nav-cta{padding:11px 17px;background:var(--teal);color:white;border-radius:30px}.menu{display:none;border:0;background:var(--aqua);color:var(--navy);border-radius:12px;padding:10px 13px;font-size:21px}
.hero{position:relative;overflow:hidden;background:var(--navy);color:white;isolation:isolate}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;padding:70px 0}.eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid #ffffff50;border-radius:30px;padding:7px 13px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#d8fafa}.eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold)}h1,h2,h3{font-family:"Space Grotesk",Inter,Arial,sans-serif;line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(2.6rem,5vw,4.6rem);margin:20px 0}h1 span{color:#8ce6e6}.hero p{max-width:600px;color:#e1edf4;font-size:18px}.hero-img{width:100%;height:460px;object-fit:cover;border-radius:42% 18px 18px 18px;box-shadow:0 25px 60px #0004}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 20px;border-radius:30px;text-decoration:none;font-weight:800;border:0;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--coral);color:white}.secondary{background:white;color:var(--navy)}.outline{border:1px solid #ffffff80;color:white;background:transparent}.hero:after{content:"";position:absolute;z-index:-1;width:420px;height:420px;right:-120px;top:-150px;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 45px #ffffff09,0 0 0 90px #ffffff06}
section{padding:68px 0}.section-head{text-align:center;max-width:720px;margin:0 auto 36px}.kicker{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.15em;color:var(--teal)}h2{font-size:clamp(2rem,3.4vw,3rem);margin:10px 0 15px;color:var(--navy)}.section-head p,.muted{color:var(--muted)}.grid{display:grid;gap:22px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 30px #102b4608}.card img{width:100%;height:220px;object-fit:cover}.card-body{padding:23px}.card h3{font-size:21px;margin:0 0 10px;color:var(--navy)}.card p{color:var(--muted);margin:0 0 12px}.text-link{color:var(--teal);font-weight:800;text-decoration:none}.iconbox{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:var(--aqua);color:var(--teal);font-size:23px;margin-bottom:18px}.soft{background:#eaf7f8}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.split img{width:100%;height:420px;object-fit:cover;border-radius:28px}.ticks{list-style:none;padding:0}.ticks li{margin:12px 0;padding-left:30px;position:relative}.ticks li:before{content:"✓";position:absolute;left:0;top:0;color:var(--teal);font-weight:900}.banner{background:linear-gradient(120deg,#0b8793,#102b46);color:white;border-radius:30px;padding:38px;display:flex;justify-content:space-between;align-items:center;gap:25px}.banner h2{color:white;margin:0 0 8px}.banner p{margin:0;color:#d9eef1}.page-hero{padding:64px 0;background:linear-gradient(120deg,#e3f6f7,#f9fcfc)}.page-hero h1{font-size:clamp(2.5rem,5vw,4rem);color:var(--navy);margin:10px 0}.page-hero p{max-width:720px;color:var(--muted);font-size:18px}.breadcrumbs{font-size:13px;color:var(--teal);font-weight:800}.form-card{background:white;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:14px;font-weight:800}.field input,.field select,.field textarea{border:1px solid #cddde2;border-radius:12px;padding:12px 13px;background:#fff;min-width:0}.field textarea{min-height:125px;resize:vertical}.notice{padding:14px 16px;border-radius:12px;background:#fff5df;color:#72521d;font-size:14px}.contact-item{display:flex;gap:15px;margin:20px 0}.contact-item .iconbox{flex-shrink:0;margin:0}.tip-card{padding:24px}.tip-card .number{font-size:12px;font-weight:900;color:var(--teal);letter-spacing:.12em}.faq details{padding:18px 0;border-bottom:1px solid var(--line)}.faq summary{font-weight:800;color:var(--navy);cursor:pointer}.faq details p{color:var(--muted)}
footer{margin-top:40px;background:var(--navy);color:#d9e7ee;padding:48px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:28px}.footer-title{color:white;font-weight:800;margin-bottom:13px}.footer-grid a{display:block;text-decoration:none;color:#c2d7e2;margin:7px 0;font-size:14px}.footer-grid a:hover{color:#8ce6e6}.footer-grid p{font-size:14px;color:#c2d7e2}.copyright{border-top:1px solid #ffffff20;margin-top:28px;padding-top:18px;font-size:12px;color:#9fb9c8;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media(max-width:900px){.links{gap:12px}.links a{font-size:13px}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.hero-grid{gap:28px}.hero-img{height:380px}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.wrap{width:min(100% - 28px,1160px)}.nav{min-height:72px}.menu{display:block}.links{display:none;position:absolute;top:72px;left:14px;right:14px;background:white;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow);align-items:stretch;flex-direction:column}.links.open{display:flex}.links a{padding:10px}.hero-grid,.split{grid-template-columns:1fr}.hero-grid{padding:48px 0}.hero-img{height:300px;border-radius:24px}.hero p{font-size:16px}.grid-3,.grid-4{grid-template-columns:1fr}.card img{height:230px}section{padding:48px 0}.split img{height:300px}.banner{align-items:flex-start;flex-direction:column;padding:26px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-grid{grid-template-columns:1fr 1fr}.page-hero{padding:46px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Official JK Optometrists logo */
@media(max-width:700px){.brand-logo{width:138px;max-height:62px}}
