/*
Theme Name: Kamal Physics Tutor

Author: Kamal Physics Tutor
Description: Responsive physics tuition website with Elementor-compatible pages and unique local landing pages.
Version: 3.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: kamal-physics
*/
:root{--navy:#081d41;--blue:#0956d9;--cyan:#37d6ef;--gold:#f9b948;--paper:#f5f8ff;--ink:#14294c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);line-height:1.65;background:white}a{color:var(--blue)}.wrap{width:min(1160px,92%);margin:auto}.ticker{background:var(--navy);color:white;overflow:hidden;white-space:nowrap;font-weight:700;font-size:.85rem}.ticker span{display:inline-block;padding:7px 0;animation:slide 22s linear infinite}@keyframes slide{from{transform:translateX(100vw)}to{transform:translateX(-100%)}}@media(prefers-reduced-motion:reduce){.ticker span{animation:none}}header.site-header{background:white;box-shadow:0 2px 20px #071b3b12;position:relative;z-index:3}.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:82px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);font-weight:900;line-height:1.2}.brand img{width:49px;height:49px;object-fit:cover;object-position:center 17%;border-radius:10px}.nav-links{display:flex;align-items:center;gap:22px}.nav-links a{text-decoration:none;font-weight:700;color:var(--navy);font-size:.9rem}.nav-links a:hover{color:var(--blue)}.btn{display:inline-flex;padding:12px 21px;border-radius:9px;background:var(--gold);color:var(--navy);font-weight:800;text-decoration:none;align-items:center;justify-content:center;border:0;cursor:pointer}.btn.blue{background:var(--blue);color:white}.hero{background:radial-gradient(circle at 70% 20%,#154889 0%,var(--navy) 60%);color:white;padding:76px 0 84px}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:55px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--cyan);font-weight:800;font-size:.78rem}.hero h1{font-size:clamp(2.25rem,5vw,4.3rem);line-height:1.13;letter-spacing:-.04em;margin:12px 0 20px}.hero h2{font-size:1.25rem;font-weight:500;color:#d6e8ff;margin:0 0 20px}.hero p{color:#d5e3f7}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.hero-photo{width:110px;height:110px;object-fit:cover;border-radius:50%;border:4px solid var(--cyan);margin-top:24px}.lead-card{background:white;color:var(--ink);border-radius:18px;padding:29px;box-shadow:0 20px 60px #030d2155}.lead-card h3{margin:0 0 5px;font-size:1.4rem}.lead-card p{color:#52627b;font-size:.9rem;margin:0 0 15px}.lead-card label{display:block;font-weight:700;font-size:.84rem;margin:12px 0 4px}.lead-card input,.lead-card select,.lead-card textarea{width:100%;border:1px solid #c8d3e5;border-radius:8px;padding:11px 12px;font:inherit;background:#fff}.lead-card textarea{min-height:65px}.lead-card button{width:100%;margin-top:16px}.notice{padding:12px;border-radius:8px;background:#e7f7ed;color:#155a37;margin:0 0 10px}.error{background:#ffe9e9;color:#8b2020}.section{padding:70px 0}.section.alt{background:var(--paper)}.section h2{font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.2;letter-spacing:-.025em;color:var(--navy);margin:0 0 14px}.intro{max-width:760px;color:#51627c;margin:0 0 29px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{border:1px solid #dbe5f3;border-radius:15px;background:white;padding:25px;box-shadow:0 8px 28px #122c5b0b}.card h3{margin:0 0 8px;color:var(--navy)}.card p{margin:0;color:#52627b}.card a{font-weight:800}.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.portrait{width:100%;max-height:490px;object-fit:cover;border-radius:18px}.checklist{list-style:none;padding:0}.checklist li{padding:8px 0 8px 30px;position:relative}.checklist li:before{content:'✓';position:absolute;left:0;color:var(--blue);font-weight:900}.area-links{display:flex;flex-wrap:wrap;gap:10px}.area-links a{background:#e9f1ff;border-radius:99px;padding:8px 15px;text-decoration:none;font-weight:700}.faq details{border-bottom:1px solid #dce4f2;padding:16px 0}.faq summary{cursor:pointer;font-weight:800;color:var(--navy)}.cta{background:var(--navy);color:white;text-align:center;padding:55px 0}.cta h2{color:white}.cta p{color:#d4e2f5}footer{background:#061630;color:#c8d7ed;padding:42px 0}footer a{color:#c8e8ff}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px}.footer-grid h3{color:white;margin-top:0}.small{font-size:.83rem;color:#9cacc6}.wp-content{padding:60px 0}.menu-toggle{display:none}@media(max-width:800px){.hero-grid,.split{grid-template-columns:1fr}.hero{padding:50px 0}.cards{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none;position:absolute;top:82px;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:24px;box-shadow:0 10px 20px #0002}.nav-links.open{display:flex}.menu-toggle{display:block;background:none;border:0;font-size:1.6rem;cursor:pointer}}@media(max-width:550px){.cards,.footer-grid{grid-template-columns:1fr}.hero-grid{gap:35px}.lead-card{padding:22px}.hero h1{font-size:2.4rem}}

@media(max-width:800px){.nav-links{max-height:calc(100dvh - 82px);overflow-y:auto}.hero-grid,.split,.cards{min-width:0}.hero-grid>*{min-width:0}.lead-card{width:100%}}
/* Elementor section wrappers intentionally add no layout spacing. */
.elementor .kp-shell,.elementor .kp-shell>.elementor-container,.elementor .kp-shell>.elementor-container>.elementor-column,.elementor .kp-shell>.elementor-container>.elementor-column>.elementor-widget-wrap,.elementor .kp-shell .elementor-widget-kp-section,.elementor .kp-shell .elementor-widget-kp-section>.elementor-widget-container{margin:0;padding:0;width:100%;max-width:none;gap:0}.elementor .kp-shell>.elementor-container>.elementor-column>.elementor-widget-wrap{display:block}.elementor-widget-kp-section{font-family:Inter,Arial,sans-serif;line-height:1.65;color:var(--ink)}.elementor-widget-kp-section h1,.elementor-widget-kp-section h2,.elementor-widget-kp-section h3{font-family:inherit;font-weight:700}.elementor-widget-kp-section p{margin-top:0;margin-bottom:1em}.elementor-widget-kp-section .card p{margin:0}.elementor-widget-kp-section .hero h1{font-weight:700}.kp-shell .cta h2{font-size:1.5em}.kp-honeypot{display:none!important}.kp-skip{position:absolute;left:-9999px}.kp-skip:focus{left:10px;top:10px;background:white;padding:10px;z-index:99999}.kp-menu{display:flex;gap:22px;list-style:none;margin:0;padding:0}.kp-menu ul{list-style:none}.kp-menu .sub-menu{display:none;position:absolute;background:#fff;padding:15px}.kp-menu li:hover>.sub-menu,.kp-menu li:focus-within>.sub-menu{display:block}.lead-card input,.lead-card select,.lead-card textarea{min-width:0}.lead-card p.small{color:#52627b}.hero .lead-card .notice{color:#155a37}.hero .lead-card .error{color:#8b2020}.hero-grid>*{min-width:0}.kp-number{color:var(--blue);font-size:1.5rem;font-weight:800;display:block;margin-bottom:12px}.kp-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.kp-steps .card{border-top:4px solid var(--blue)}.kp-rows{display:grid;gap:14px}.kp-rows .card{display:grid;grid-template-columns:1fr 2fr;gap:10px 28px;border-left:4px solid var(--cyan)}.kp-rows .card p:last-child:not(:nth-child(2)){grid-column:2}.kp-notes{border-left:4px solid var(--blue);padding-left:30px}.kp-notes article+article{border-top:1px solid #dbe5f3;padding-top:16px;margin-top:20px}.kp-notes h3{margin:0 0 8px}.kp-notes p{margin:0 0 10px}.kp-hero-left .hero-grid{grid-template-columns:380px minmax(0,1fr)}.kp-hero-left .kp-hero-copy{grid-column:2;grid-row:1}.kp-hero-left .lead-card{grid-column:1;grid-row:1}.kp-hero-compact h1{font-size:clamp(2.2rem,4vw,3.45rem)}.kp-hero-center .hero-grid{grid-template-columns:1fr}.kp-hero-center .kp-hero-copy{max-width:900px;text-align:center;margin:auto}.kp-hero-center .hero-actions{justify-content:center}.kp-hero-center .lead-card{width:100%;max-width:760px;margin:auto}.kp-soft{background:var(--paper)}.kp-accent{border-top:4px solid var(--blue)}.kp-left .split>div:first-child{order:2}.kp-left .split>div:last-child{order:1}.kp-wide .cards{grid-template-columns:repeat(2,1fr)}.lead-card button:disabled{opacity:.65;cursor:wait}.ticker:hover span,.ticker:focus-within span{animation-play-state:paused}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:800px){.kp-hero-left .hero-grid,.kp-steps,.kp-wide .cards{grid-template-columns:1fr}.kp-hero-left .kp-hero-copy,.kp-hero-left .lead-card{grid-column:auto;grid-row:auto}.kp-rows .card{grid-template-columns:1fr}.kp-rows .card p:last-child:not(:nth-child(2)){grid-column:auto}.kp-menu{flex-direction:column;gap:16px}.kp-menu .sub-menu{position:static}.nav-links{max-height:calc(100dvh - 82px);overflow-y:auto}.kp-left .split>div{order:initial!important}.hero h1{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker span{animation:none;white-space:normal}}
.elementor-widget-kp-section .card h3{font-size:1.17em;line-height:1.65}.elementor-widget-kp-section .card a{text-decoration:underline}.elementor-widget-kp-section .btn{text-decoration:none}.elementor-widget-kp-section .lead-card h3{font-size:1.4rem}.elementor-widget-kp-section .hero p{font-size:1rem}.elementor-widget-kp-section .hero .lead-card p{font-size:.9rem}.elementor-widget-kp-section .cta h2{font-size:1.5em}
.elementor .kp-shell,.elementor .kp-shell>.elementor-container,.elementor .kp-shell>.elementor-container>.elementor-column,.elementor .kp-shell>.elementor-container>.elementor-column>.elementor-widget-wrap,.elementor .kp-shell .elementor-widget-kp-section,.elementor .kp-shell .elementor-widget-kp-section>.elementor-widget-container{width:100%!important;max-width:none!important}.elementor .kp-shell>.elementor-container>.elementor-column{flex-basis:100%!important}.elementor .kp-shell img.hero-photo{width:110px;height:110px;object-fit:cover;border:4px solid var(--cyan);border-radius:50%}.elementor .kp-shell img.portrait{border-radius:18px;width:100%;max-height:490px;object-fit:cover}.elementor .kp-shell .hero h2{font-size:1.25rem;font-weight:500}
/* Keep the reference typography stable when Elementor loads a global font kit. */
body.wp-theme-kamal-physics,.elementor-widget-kp-section{font-family:Arial,Helvetica,sans-serif}.elementor-widget-kp-section h1,.elementor-widget-kp-section h2,.elementor-widget-kp-section h3,.elementor-widget-kp-section p,.elementor-widget-kp-section .btn{font-family:Arial,Helvetica,sans-serif}
.elementor .kp-shell .hero h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(2.25rem,5vw,4.3rem);line-height:1.13;letter-spacing:-.04em;margin:12px 0 20px;font-weight:700;color:white}.elementor .kp-shell .hero h2{font-family:Arial,Helvetica,sans-serif;font-size:1.25rem;line-height:1.65;font-weight:500;color:#d6e8ff;margin:0 0 20px}.elementor .kp-shell .section h2{font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.2;letter-spacing:-.025em;color:var(--navy);margin:0 0 14px}.elementor .kp-shell .kp-hero-compact h1{font-size:clamp(2.2rem,4vw,3.45rem)}@media(max-width:550px){.elementor .kp-shell .hero h1{font-size:2.4rem}}
body.wp-theme-kamal-physics,.elementor-widget-kp-section{font-size:16px;font-weight:400;letter-spacing:normal;line-height:1.65}.elementor .kp-shell p{font-weight:400;letter-spacing:normal}
