:root{--navy:#092857;--yellow:#f7bf36;--pale:#f7f8fa;--ink:#102f5f;--stroke:#cdd7e4}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}
button,input,select,textarea{font:inherit}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;top:-999px;left:20px;background:#fff;color:#0a2852;padding:10px;z-index:100}
.skip-link:focus{top:10px}
.icon-defs{height:0;width:0;position:absolute;overflow:hidden}
.desktop-landing{width:min(100%,1536px);aspect-ratio:1536/1024;margin:auto;position:relative;container-type:inline-size;background:#fff}
.desktop-marker{position:absolute;left:0;width:1px;height:1px;pointer-events:none}
.desktop-art{width:100%;height:100%;object-fit:contain;display:block;user-select:none;pointer-events:none}
.hotspot{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);z-index:1;border-radius:7px;cursor:pointer}
.hotspot:focus-visible{outline:3px solid #0873d1;outline-offset:-2px;background:rgba(18,117,213,.09)}
.desktop-inquiry{position:absolute;left:71.5%;top:68.4%;width:23.5%;height:29%;z-index:4;display:flex;flex-direction:column;container-type:normal}
.desktop-inquiry h2{font-size:1.45cqw;margin:0 0 .4cqw;font-weight:800;line-height:1.08;letter-spacing:-.03em;color:#132c50}
.desktop-inquiry p:not(.honeypot){font-size:.95cqw;line-height:1.18;margin:0 0 .65cqw;color:#324765}
.contact-form{display:flex;flex-direction:column;gap:.46cqw}
.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:.6cqw}
.contact-form :is(input,select,textarea){width:100%;min-width:0;background:white;border:1px solid #cad4e0;border-radius:.45cqw;outline-offset:2px;padding:.4cqw .62cqw;font-family:Arial,Helvetica,sans-serif;color:#243e61;font-size:.82cqw}
.contact-form :is(input,select){height:2.3cqw}
.contact-form textarea{height:4.15cqw;resize:none;line-height:1.3}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#627188;opacity:1}
.contact-form :is(input,textarea,select):focus{outline:2px solid #3476bd}
.send-button{cursor:pointer;width:100%;height:2.65cqw;background:var(--yellow);border:0;border-radius:.65cqw;color:#071f43;font-size:1.08cqw;font-weight:900;white-space:nowrap}
.send-button:hover{background:#e4a819}
.honeypot{display:none!important}
.mobile-landing{display:none}
.resource-section{background:#f1f6fb;border-top:1px solid #dce5ee;padding:46px 24px 58px}
.resource-inner{width:min(100%,1200px);margin:auto;display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.resource-inner small{color:#a87e20;font-weight:800;letter-spacing:.12em}
.resource-inner h2{font-size:clamp(28px,3vw,43px);line-height:1.1;letter-spacing:-.03em;margin:12px 0}
.resource-inner p{font-size:17px;line-height:1.5;color:#425873}
.resource-form{display:grid;gap:9px;padding:20px 24px;border:1px solid #dee7f0;border-radius:18px;background:white}
.resource-form>label:not(.opt-in){font-size:14px;font-weight:700}
.resource-form>input{width:100%;border:1px solid #cad4e0;border-radius:10px;padding:12px;font-size:16px}
.opt-in{display:flex;align-items:start;gap:12px;color:#34445b;font-size:13px;line-height:1.4}
.opt-in input{margin-top:2px;accent-color:#165a9b}
.resource-form .fine-print{font-size:12px;margin:0;color:#566577}
.resource-form .fine-print a{text-decoration:underline}
.footer{background:#071d3b;color:#fff;display:grid;grid-template-columns:2fr 1fr;gap:38px;align-items:center;padding:28px max(24px,calc((100vw - 1200px)/2))}
.footer strong{font-size:16px}
.footer p{line-height:1.5;font-size:14px;color:#e3e9f3}
.footer-links{display:grid;gap:12px;justify-items:start}
.footer-links a{font-weight:700;font-size:14px}
.mobile-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:11px;padding:12px 16px;font-size:16px;font-weight:800;text-align:center}
.mobile-btn.gold{background:#ffc444;color:#082247}
.mobile-btn.navy{background:#082957;color:white}
.mobile-btn.outline{border:2px solid #082957;background:#fff;color:#082957}
.mobile-btn:hover{filter:brightness(.96)}
@media(max-width:1000px){
 .desktop-landing{display:none}
 .mobile-landing{display:block;max-width:720px;margin:auto}
 .mobile-header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;background:white;padding:8px 16px;box-shadow:0 2px 10px #102b4c1a}
 .mobile-header img{width:165px;height:auto}
 .mobile-menu-button{background:white;border:1px solid #bacbdd;color:#0a2852;padding:10px 13px;border-radius:9px;font-size:19px;cursor:pointer}
 .mobile-nav{position:absolute;top:100%;left:0;right:0;display:none;background:white;padding:12px 18px;box-shadow:0 10px 18px #0a285229}
 .mobile-nav.open{display:grid;gap:2px}
 .mobile-nav a{padding:13px 8px;border-bottom:1px solid #e6ecf2;font-weight:750}
 .mobile-hero img{width:100%;height:auto}
 .mobile-hero-copy{padding:20px 20px 24px;background:linear-gradient(145deg,#fff 10%,#ebf5ff 100%)}
 .mobile-kicker{font-size:11px;font-weight:900;letter-spacing:.11em;color:#0e2e59}
 .mobile-hero h2{font-size:clamp(38px,7.9vw,61px);font-weight:1000;line-height:.92;letter-spacing:-.04em;color:#082957;margin:12px 0}
 .mobile-hero h2 span{display:block;color:#b88617;margin-top:5px}
 .mobile-hero-copy p{font-size:20px;font-weight:800;line-height:1.15;margin:14px 0 22px;color:#113461}
 .mobile-main-actions{display:grid;gap:10px}
 .mobile-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px}
 .mobile-cards img{width:100%;aspect-ratio:376/179;object-fit:cover;border-radius:10px}
 .mobile-book,.mobile-youtube,.mobile-inquiry{margin:8px;padding:22px;border-radius:18px;border:1px solid #e1e8ef;background:#fff}
 .mobile-book{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center}
 .mobile-book img{width:100%;height:auto;box-shadow:0 10px 24px #071d3b30;border-radius:3px}
 .mobile-book small{background:#f2c147;padding:6px 10px;border-radius:14px;font-size:12px;font-weight:800}
 .mobile-book h2{font-size:clamp(26px,5vw,38px);line-height:1.06;margin:12px 0;color:#0b2a59}
 .mobile-book p,.mobile-youtube p,.mobile-inquiry p{font-size:16px;line-height:1.4;color:#455772}
 .mobile-youtube{background:#0c2b57;color:#fff}
 .mobile-youtube h2{font-size:22px;margin:0 0 14px}
 .mobile-youtube img{width:100%;border-radius:9px}
 .mobile-youtube p{color:#f6f7f8}
 .mobile-youtube .mobile-btn{background:white;color:#0c2b57}
 .mobile-inquiry{background:#f7f9fc}
 .mobile-inquiry h2{font-size:26px;margin:0 0 6px}
 .mobile-inquiry p{margin:0 0 18px}
 .contact-form{gap:10px}
 .contact-form .form-pair{gap:10px}
 .contact-form :is(input,select,textarea){height:auto;min-height:45px;padding:12px 13px;border-radius:9px;font-size:16px}
 .contact-form textarea{min-height:110px}
 .send-button{font-size:16px;height:51px;border-radius:10px}
}
@media(max-width:560px){
 .mobile-cards{grid-template-columns:1fr}
 .mobile-hero-copy{padding:18px 16px 21px}
 .mobile-hero h2{font-size:clamp(36px,11.5vw,58px)}
 .mobile-book{grid-template-columns:125px 1fr;gap:14px;padding:16px}
 .mobile-book .mobile-btn{font-size:13px;padding:10px 12px}
 .mobile-book h2{font-size:25px}
 .mobile-book p{font-size:13px}
 .mobile-inquiry .form-pair{grid-template-columns:1fr}
 .resource-inner{grid-template-columns:1fr;gap:18px}
 .resource-section{padding:28px 14px}
 .footer{grid-template-columns:1fr;padding:25px 18px}
}

/* Crisp native HTML navigation above unchanged approved homepage artwork. */
.desktop-crisp-header{position:absolute;top:0;left:0;right:0;height:8.55%;z-index:8;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:1.2cqw;padding:0 2.65cqw;border-bottom:1px solid #e5ebf2}
.desktop-crisp-header .crisp-logo{width:16.2%;flex:none;display:flex;align-items:center}
.desktop-crisp-header .crisp-logo img{width:14.5cqw;height:auto;max-width:100%}
.crisp-nav{display:flex;align-items:center;justify-content:center;gap:.38cqw;flex:1;min-width:0}
.crisp-nav a{font-family:Arial,Helvetica,sans-serif;color:#0c2b54;font-size:clamp(11.5px,1.04cqw,16px);font-weight:800;white-space:nowrap;letter-spacing:-.02em;padding:.35cqw .08cqw;border-bottom:3px solid transparent}
.crisp-nav a[aria-current="page"],.crisp-nav a:hover{border-color:#ecbc34}
.crisp-contact{width:16.5%;display:flex;align-items:center;flex-direction:column;gap:.35cqw;flex:none;font-weight:750}
.crisp-contact .crisp-phone{background:#ffc544;color:#092857;border-radius:1.1cqw;display:flex;align-items:center;justify-content:center;padding:.78cqw 1cqw;font-size:clamp(12px,1.15cqw,18px);font-weight:900;white-space:nowrap;width:100%;box-shadow:0 5px 12px #c9961420}
.crisp-contact>div{font-size:clamp(11px,.85cqw,13px);color:#092857}
.crisp-contact span{margin:0 .7cqw}
.desktop-sharp-book{position:absolute;z-index:3;left:2.0%;top:67.25%;width:18.2%;height:31.6%;object-fit:contain;background:#fff;pointer-events:none}
/* Neat Realty credit programs, placed below the approved homepage visual. */
.buyer-rewards{background:#fff;padding:56px 24px;border-top:1px solid #e3e9f2}
.rewards-wrap{width:min(1170px,100%);margin:0 auto}
.rewards-intro{text-align:center;max-width:850px;margin:0 auto 29px}
.rewards-kicker{color:#a47618;font-size:12px;font-weight:900;letter-spacing:.17em;margin:0 0 12px}
.rewards-intro h2{color:#0b2d59;font-size:clamp(30px,3.3vw,46px);line-height:1.1;letter-spacing:-.04em;margin:0}
.rewards-intro h2 em{font-style:normal;color:#bd8b1b}
.rewards-intro p{color:#53657a;font-size:17px;line-height:1.5;margin:13px 0 0}
.rewards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.reward-card{position:relative;display:flex;flex-direction:column;gap:0;min-height:290px;padding:30px 33px;background:#0b2d58;border:1px solid #dce5ee;border-radius:18px;box-shadow:0 12px 28px #08295513;overflow:hidden}
.reward-card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:5px;background:#e7b840}
.reward-card.reward-heroes{background:linear-gradient(140deg,#fffdf8,#f5f0e5)}
.reward-type{font-size:12px;letter-spacing:.14em;font-weight:900;color:#f1d089;margin-bottom:18px}
.reward-heroes .reward-type{color:#8e6a20}
.reward-value{color:#fff;font-size:clamp(32px,3.3vw,45px);font-weight:650;line-height:1.1}
.reward-value span{color:#f2ce71;font-size:1.4em;font-weight:900;letter-spacing:-.05em}
.reward-card h3{color:#fff;font-size:20px;margin:9px 0 7px}
.reward-card p{color:#e5edf5;font-size:16px;line-height:1.48;margin:0 0 22px}
.reward-heroes .reward-value,.reward-heroes h3{color:#082852}
.reward-heroes .reward-value span{color:#ad7d12}
.reward-heroes p{color:#4a5667}
.reward-cta{display:flex;align-items:center;justify-content:space-between;gap:10px;align-self:flex-start;margin-top:auto;background:#f4c34a;color:#092857;font-size:15px;font-weight:900;padding:12px 16px;border-radius:10px;min-height:44px}
.reward-heroes .reward-cta{background:#0c2c55;color:#fff}
.reward-cta:hover,.reward-cta:focus-visible{filter:brightness(.95)}
.reward-fine{color:#5b6b7c;line-height:1.5;font-size:13px;margin:18px 0 0}
@media(max-width:1000px){.desktop-crisp-header,.desktop-sharp-book{display:none}}
@media(max-width:720px){.rewards-grid{grid-template-columns:1fr}.buyer-rewards{padding:39px 16px}.reward-card{padding:24px 23px;min-height:auto}.rewards-intro h2{font-size:30px}}

@media(min-width:1001px) and (max-width:1140px){
 .crisp-nav a{font-size:11px;padding-inline:0}
 .crisp-contact .crisp-phone{font-size:11px}
}

/* V13: actual five-page checklist preview beside the real signup, no decorative empty box. */
.resource-content{display:grid;grid-template-columns:minmax(0,1fr) 140px;align-items:center;gap:22px;}
.resource-content>div{min-width:0;}
.resource-guide-preview{display:block;width:140px;max-width:100%;border:5px solid white;border-radius:6px;box-shadow:0 16px 30px rgba(8,41,80,.18);transform:rotate(2deg);}
@media(max-width:650px){.resource-content{grid-template-columns:1fr 98px;gap:13px;}.resource-guide-preview{width:98px;transform:none;}}


/* Strict V14 fixes: homepage book overlay */
.homepage-book-overlay{position:absolute;left:4.4%;top:69.4%;width:36.1%;height:25.4%;z-index:0;background:#fff;border-radius:12px;display:grid;grid-template-columns:1.05fr 1.35fr;align-items:center;gap:1.2cqw;padding:1cqw 1.35cqw;box-sizing:border-box;pointer-events:none;overflow:hidden;box-shadow:0 12px 32px rgba(7,33,68,.10);}
.homepage-book-cover{width:100%;max-width:15.7cqw;max-height:100%;object-fit:contain;justify-self:center;align-self:center;filter:drop-shadow(0 12px 18px rgba(0,0,0,.12));}
.homepage-book-copy{display:flex;flex-direction:column;gap:.55cqw;color:#17325b;}
.homepage-book-kicker{align-self:flex-start;background:#f2bf39;color:#0b2d59;font-weight:800;letter-spacing:.06em;border-radius:999px;padding:.35cqw 1cqw;font-size:1.05cqw;line-height:1;}
.homepage-book-copy h2{margin:0;font-size:3.15cqw;line-height:.96;letter-spacing:-.04em;color:#0b2d59;}
.homepage-book-copy p{margin:0;color:#3d5375;font-size:1.28cqw;line-height:1.28;max-width:28ch;}
.homepage-book-btn{margin-top:.55cqw;display:inline-flex;align-items:center;justify-content:space-between;gap:.8cqw;width:100%;max-width:17.8cqw;background:#f2bf39;color:#0b2d59;text-decoration:none;font-weight:800;border-radius:1cqw;padding:.85cqw 1.25cqw;font-size:1.28cqw;box-shadow:inset 0 0 0 1px rgba(11,45,89,.08);pointer-events:auto;}
.homepage-book-btn span{font-size:1.7cqw;line-height:1;}


/* V16 targeted rebuild: use landscape crops from the provided photos so there are no white side borders. */
.in-hero-media img[src$="about-jimmy-tanya-hero.jpg"],
.in-hero-media img[src$="jimmy-roof-inspection-hero.jpg"],
.in-hero-media img[src$="jimmy-youtube-hero-hero.jpg"]{display:block;width:100%;height:100%;max-height:none;aspect-ratio:16/10;object-fit:cover;object-position:center center;}
