:root{--ink:#12322c;--ink2:#1d4a41;--paper:#f4efe3;--paper2:#ebe4d3;--rule:#cfc6b2;--brass:#7a4a0a;--gold:#d9972e;--text:#26302c;--mute:#505a54;--alert:#c81e1e;--w:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--text);font:17px/1.65 ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:var(--ink2);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--brass)}
.tp-skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 14px;z-index:99}.tp-skip:focus{left:8px;top:8px}
.tp-wrap{width:min(var(--w),100% - 40px);margin:0 auto}
/* header */
.tp-top{background:var(--paper);border-bottom:3px double var(--rule);position:sticky;top:0;z-index:30}
.tp-top .tp-wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:74px}
.tp-brand{display:block;line-height:0}.tp-brand svg{width:260px;height:auto;max-width:62vw}
.tp-nav{display:flex;align-items:center;gap:4px 22px;flex-wrap:wrap;justify-content:flex-end}
.tp-nav a{color:var(--ink);text-decoration:none;font:700 13px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.06em;text-transform:uppercase;padding:10px 2px;border-bottom:2px solid transparent}
.tp-nav a:hover,.tp-nav a[aria-current=page]{border-bottom-color:var(--gold);color:var(--ink)}
.tp-nav a.tp-tel{background:var(--ink);color:var(--paper);padding:10px 14px;border-radius:2px;border:0}.tp-nav a.tp-tel:hover{background:var(--brass);color:#fff}
.tp-burger{display:none;background:none;border:2px solid var(--ink);color:var(--ink);font:700 13px ui-monospace,Menlo,monospace;letter-spacing:.06em;text-transform:uppercase;padding:9px 12px;cursor:pointer}
/* hero */
.tp-hero{position:relative;color:var(--paper);background:var(--ink);overflow:hidden;isolation:isolate}
.tp-hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.tp-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,35,30,.82) 0%,rgba(11,35,30,.5) 52%,rgba(11,35,30,.18) 100%);z-index:-1}
.tp-hero .tp-wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:44px;align-items:center;padding:70px 0 76px}
.tp-sub .tp-wrap{padding:54px 0 58px}.tp-sub:not(.tp-hasform) .tp-wrap{grid-template-columns:minmax(0,1fr)}
.tp-eyebrow{display:inline-block;font:700 12.5px/1.3 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);border-top:2px solid var(--gold);padding-top:9px;margin-bottom:16px}
.tp-hero h1{font:700 clamp(2.1rem,4.4vw,3.45rem)/1.08 Georgia,"Times New Roman",serif;margin:0 0 18px;letter-spacing:-.01em;color:#fff}
.tp-lede{font-size:1.14rem;max-width:36em;margin:0 0 26px;color:#efe9d9}
.tp-actions{display:flex;gap:14px;flex-wrap:wrap}
.tp-btn{display:inline-block;font:700 15px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;padding:16px 22px;border:2px solid var(--ink);background:var(--gold);color:var(--ink);box-shadow:4px 4px 0 var(--ink);cursor:pointer;transition:transform .12s,box-shadow .12s}
.tp-btn:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink);color:var(--ink)}
.tp-hero .tp-btn{border-color:#0b231e;box-shadow:4px 4px 0 #0b231e}
.tp-btn.tp-line{background:transparent;color:var(--paper);border-color:var(--paper);box-shadow:none}.tp-btn.tp-line:hover{background:var(--paper);color:var(--ink);transform:none}
/* crumbs */
.tp-crumbs{font:600 12.5px ui-monospace,Menlo,monospace;letter-spacing:.04em;margin-bottom:14px;color:#d8d2c0}.tp-crumbs a{color:#efe9d9}.tp-crumbs i{font-style:normal;margin:0 8px;color:var(--gold)}
/* coupon form */
.tp-coupon{background:var(--paper);color:var(--text);border:2px dashed var(--ink);outline:6px solid var(--paper);padding:26px 24px 22px;position:relative;box-shadow:0 18px 40px rgba(0,0,0,.35)}
.tp-ctitle{font:700 1.3rem/1.2 Georgia,"Times New Roman",serif;margin:0 0 4px;color:var(--ink)}.tp-csub{margin:0 0 8px;padding-bottom:16px;border-bottom:2px dashed var(--rule);color:var(--mute);font-size:.94rem}
.tp-coupon label.tp-l{display:block;font:700 11.5px/1.2 ui-monospace,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin:12px 0 5px}
.tp-coupon input[type=text],.tp-coupon input[type=tel],.tp-coupon select,.tp-coupon textarea{width:100%;font:inherit;font-size:16px;padding:11px 12px;background:#fffdf7;border:1.5px solid #8d8470;border-radius:2px;color:var(--text)}
.tp-coupon textarea{min-height:68px;resize:vertical}
.tp-coupon input:focus,.tp-coupon select:focus,.tp-coupon textarea:focus{outline:3px solid var(--gold);outline-offset:1px;border-color:var(--ink)}
.tp-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tp-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.tp-tick{display:flex;gap:10px;align-items:flex-start;margin:12px 0 0;font-size:13.5px;line-height:1.45;color:var(--text)}.tp-tick input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--ink)}
.tp-coupon .tp-btn{width:100%;margin-top:16px;text-align:center}
.tp-status{min-height:1.3em;margin:10px 0 0;font-size:14px;font-weight:600}.tp-status.err{color:#a11313}.tp-status.ok{color:var(--ink2)}
/* promise strip */
.tp-strip{background:var(--ink);color:var(--paper);border-top:3px solid var(--gold)}
.tp-strip ul{list-style:none;margin:0 auto;padding:14px 0;width:min(var(--w),100% - 40px);display:flex;flex-wrap:wrap;gap:6px 30px;justify-content:center;font:700 12.5px/1.3 ui-monospace,Menlo,monospace;letter-spacing:.09em;text-transform:uppercase}
.tp-strip li:before{content:"\2713";color:var(--gold);margin-right:9px}
/* bands */
.tp-band{padding:64px 0;background:var(--paper);background-image:repeating-linear-gradient(0deg,transparent 0 33px,rgba(120,105,70,.09) 33px 34px)}
.tp-band.tp-alt{background-color:var(--paper2)}
.tp-copy{max-width:760px;position:relative;padding-left:26px;border-left:3px solid #d8b27a}
.tp-copy h2,.tp-faq h2{font:700 clamp(1.6rem,3vw,2.2rem)/1.15 Georgia,"Times New Roman",serif;color:var(--ink);margin:0 0 18px}
.tp-copy h3{font:700 .95rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.07em;text-transform:uppercase;color:var(--brass);margin:28px 0 6px}
.tp-copy p{margin:0 0 15px}.tp-copy ul{margin:0 0 15px;padding-left:20px}
.tp-split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:44px;align-items:start}
.tp-split .tp-copy{max-width:none}
.tp-pic{margin:0}.tp-pic img{width:100%;border:8px solid #fffdf7;box-shadow:0 10px 26px rgba(30,25,10,.22),0 0 0 1px var(--rule);transform:rotate(1.2deg)}
.tp-pic figcaption{font:600 12px/1.4 ui-monospace,Menlo,monospace;color:var(--mute);margin-top:12px;letter-spacing:.03em}
.tp-copy .tp-pic{margin:6px 0 22px}.tp-copy .tp-pic img{transform:rotate(-.8deg)}
/* mid cta */
.tp-mid{background:var(--ink);color:var(--paper);padding:60px 0}.tp-mid .tp-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:44px;align-items:center}
.tp-mid h2{font:700 clamp(1.5rem,3vw,2.1rem)/1.15 Georgia,serif;margin:0 0 14px;color:#fff}.tp-mid p{color:#e6dfcc;margin:0 0 14px}
/* faq */
.tp-faq{padding:60px 0;background:var(--paper2)}.tp-faq .tp-wrap>div{max-width:800px}
.tp-faq details{border:1.5px solid var(--rule);border-left:5px solid var(--ink);background:#fffdf7;margin:0 0 12px}
.tp-faq summary{cursor:pointer;padding:15px 18px;font-weight:700;color:var(--ink);list-style:none;display:flex;justify-content:space-between;gap:14px}
.tp-faq summary::-webkit-details-marker{display:none}.tp-faq summary:after{content:"+";font:700 20px ui-monospace,monospace;color:var(--brass)}.tp-faq details[open] summary:after{content:"\2212"}
.tp-faq .tp-ans{padding:0 18px 6px}
/* map + footer */
.tp-map iframe{display:block;width:100%;height:320px;border:0;filter:sepia(.35) saturate(.8)}
.tp-foot{background:#0d2621;color:#d9d2bd;padding:48px 0 98px;font-size:15px}
.tp-foot a{color:#f0e8d0}.tp-foot h3{font:700 12.5px ui-monospace,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 12px}
.tp-fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px}.tp-foot ul{list-style:none;margin:0;padding:0}.tp-foot li{margin:0 0 8px}
.tp-legal{border-top:1px solid #2c4a42;margin-top:30px;padding-top:18px;font-size:13px;color:#b9b29c}
/* sticky call */
.talk-to-alex-sticky{position:fixed;right:18px;bottom:18px;z-index:60;background:#c81e1e;color:#fff!important;text-decoration:none;font:800 18px/1 ui-sans-serif,system-ui,Arial,sans-serif;letter-spacing:.04em;padding:21px 30px;border-radius:999px;box-shadow:0 8px 24px rgba(0,0,0,.35);animation:tp-bounce 2.4s ease-in-out infinite}
.talk-to-alex-sticky:hover{background:#a81515}
@keyframes tp-bounce{0%,100%{transform:translateY(0)}45%{transform:translateY(-9px)}60%{transform:translateY(0)}75%{transform:translateY(-4px)}}
@media (prefers-reduced-motion:reduce){.talk-to-alex-sticky{animation:none}html{scroll-behavior:auto}.tp-btn{transition:none}}
@media (max-width:980px){.tp-hero .tp-wrap,.tp-split,.tp-mid .tp-wrap{grid-template-columns:1fr}.tp-hero .tp-wrap{padding:46px 0 52px}.tp-fgrid{grid-template-columns:1fr 1fr}.tp-hero:after{background:rgba(11,35,30,.72)}}
@media (max-width:760px){.tp-burger{display:block}.tp-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:10px 20px 18px;border-bottom:3px double var(--rule);flex-direction:column;align-items:stretch}.tp-nav.open{display:flex}.tp-nav a{padding:13px 4px;border-bottom:1px solid var(--rule)}.tp-two{grid-template-columns:1fr}.tp-fgrid{grid-template-columns:1fr}.tp-band{padding:44px 0}.tp-copy{padding-left:16px}.talk-to-alex-sticky{font-size:16px;padding:17px 22px;right:12px;bottom:12px}}
