:root{--ink:#241d18;--body:#554941;--muted:#7d7168;--cream:#fbf7f1;--paper:#fffdf9;--sand:#f0e5d6;--ember:#c75b25;--ember2:#9f401b;--char:#29211c;--line:#e3d6c7;--green:#294b3c;--max:1180px;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--cream);color:var(--body);font:16px/1.65 var(--sans)}h1,h2,h3{font-family:var(--serif);color:var(--ink);line-height:1.08;letter-spacing:-.02em}h1{font-size:clamp(2.8rem,7vw,5.8rem);margin:.25rem 0 1rem}h2{font-size:clamp(2rem,4vw,3.2rem);margin:0 0 1rem}h3{font-size:1.35rem;margin:0 0 .5rem}p{margin:0 0 1rem}a{color:inherit}.wrap{max-width:var(--max);margin:auto;padding:0 1.3rem}.top{position:sticky;top:0;z-index:50;background:rgba(251,247,241,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--ink);font-weight:850;font-size:1.18rem}.brand-mark{width:44px;height:44px;border-radius:12px;background:var(--char);color:#fff;display:grid;place-items:center;position:relative;font:700 18px var(--serif);box-shadow:inset 0 0 0 2px var(--ember)}.brand-mark:after{content:'';position:absolute;inset:7px;border:1px solid rgba(255,255,255,.35);transform:rotate(45deg)}.links{display:flex;align-items:center;gap:.25rem}.links a{text-decoration:none;font-weight:650;padding:.65rem .8rem;border-radius:8px;color:var(--ink)}.links a:hover{background:var(--sand)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.25rem;border-radius:999px;background:var(--ember);color:white!important;text-decoration:none!important;font-weight:800;border:0;cursor:pointer;box-shadow:0 12px 25px -16px var(--ember2);transition:.15s}.btn:hover{background:var(--ember2);transform:translateY(-1px)}.btn.dark{background:var(--char)}.btn.large{padding:1rem 1.6rem;font-size:1.05rem}.hero{padding:clamp(4.5rem,9vw,8rem) 0 5rem;background:radial-gradient(circle at 82% 30%,#f1dcc3 0,#f1dcc300 35%),var(--cream)}.hero-grid{display:grid;gap:3.5rem;align-items:center}@media(min-width:900px){.hero-grid{grid-template-columns:1.05fr .95fr}}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:850;color:var(--ember2);margin-bottom:1rem}.lead{font-size:clamp(1.15rem,2vw,1.35rem);max-width:48ch}.actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:1.8rem}.text-link{font-weight:750;text-decoration:none}.text-link:hover{text-decoration:underline}.house-card{background:var(--char);border-radius:28px;padding:1rem;box-shadow:0 35px 70px -35px #2a211ccc;transform:rotate(1deg)}.house{border:2px solid #d49a55;border-radius:20px;background:linear-gradient(145deg,#6b4027,#2c231d);padding:2rem;min-height:390px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden}.house:before{content:'';position:absolute;left:10%;right:10%;top:9%;height:38%;border:8px solid #1d1916;border-bottom:0;transform:skewX(-1deg);clip-path:polygon(50% 0,100% 100%,0 100%);opacity:.95}.crest{position:relative;margin-top:2.5rem;width:190px;height:150px;background:#f5e7d1;border:5px solid #d49a55;box-shadow:0 15px 30px #0008;display:grid;place-items:center;font:700 50px var(--serif);color:#30261f}.crest:before{content:'H  ×  S';position:absolute;transform:rotate(-12deg);font-size:48px;color:#3b3028}.house h2{color:#fff;margin:1.2rem 0 .3rem;font-size:2.2rem}.house p{color:#f1d8b6;margin:0}.house-window{position:absolute;top:2.2rem;width:42px;height:42px;border:4px solid #e6a34d;box-shadow:0 0 28px #f59d3a;background:linear-gradient(90deg,transparent 46%,#e6a34d 46% 54%,transparent 54%),linear-gradient(0deg,transparent 46%,#e6a34d 46% 54%,transparent 54%)}.section{padding:clamp(4rem,8vw,7rem) 0}.tint{background:var(--sand)}.center{text-align:center}.center h2{margin-left:auto;margin-right:auto}.steps{display:grid;gap:1rem;margin-top:2.5rem}@media(min-width:850px){.steps{grid-template-columns:repeat(3,1fr)}}.step,.feature,.price{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:1.7rem}.step-num{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--ember);color:#fff;font:700 1.2rem var(--serif);margin-bottom:1rem}.step p,.feature p{font-size:.96rem}.features{display:grid;gap:1rem;margin-top:2.5rem}@media(min-width:700px){.features{grid-template-columns:repeat(2,1fr)}}@media(min-width:1050px){.features{grid-template-columns:repeat(3,1fr)}}.feature{border-top:4px solid var(--ember)}.feature-icon{font-size:1.7rem;margin-bottom:.5rem}.split{display:grid;gap:2rem}@media(min-width:850px){.split{grid-template-columns:1fr 1.2fr;gap:5rem}}.big-quote{font:italic 1.5rem/1.35 var(--serif);color:var(--ink);border-left:4px solid var(--ember);padding-left:1.2rem}.band{background:var(--green);color:#f8f0e6;padding:1.1rem 0}.band-inner{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem 2rem;font-weight:750}.band a{color:#fff;text-decoration:underline}.faq{max-width:850px;margin:2rem auto 0}.faq details{background:var(--paper);border:1px solid var(--line);border-radius:12px;margin:.65rem 0;padding:0 1.1rem}.faq summary{cursor:pointer;padding:1rem 0;font-weight:750;color:var(--ink);list-style:none;display:flex;justify-content:space-between}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';color:var(--ember);font-size:1.4rem}.faq details[open] summary:after{content:'−'}.faq details p{padding:0 0 1rem;margin:0}.cta{background:var(--char);color:#e9dfd5;padding:clamp(4rem,8vw,6rem) 0}.cta h2{color:#fff}.cta-grid{display:grid;gap:2rem}@media(min-width:850px){.cta-grid{grid-template-columns:1fr 1.1fr;gap:4rem}}form.card{background:var(--paper);color:var(--body);border-radius:18px;padding:1.6rem}.row{display:grid;gap:1rem}@media(min-width:600px){.row{grid-template-columns:1fr 1fr}}label{display:block;font-weight:700;color:var(--ink);font-size:.92rem;margin-bottom:1rem}input,textarea,select{display:block;width:100%;margin-top:.35rem;border:1px solid #d8cbbb;border-radius:10px;background:#fffdfa;padding:.78rem;font:inherit;color:var(--ink)}textarea{resize:vertical}.flash{padding:.8rem 1rem;border-radius:10px;background:#e8f6ec;color:#14532d;margin-bottom:1rem}.flash.error{background:#fde9e6;color:#7a2015}.hp{position:absolute;left:-9999px}.footer{background:#1b1613;color:#b8aaa0;padding:2.5rem 0}.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}.footer a{color:#fff}.subhero{padding:4rem 0 3rem;background:linear-gradient(135deg,#2d241e,#493326);color:#f8eee4}.subhero h1{color:#fff;font-size:clamp(2.5rem,6vw,4.5rem)}.subhero p{max-width:65ch}.prices{display:grid;gap:1rem;margin-top:2.5rem}@media(min-width:850px){.prices{grid-template-columns:repeat(3,1fr)}}.price{position:relative}.price.featured{border:2px solid var(--ember);transform:translateY(-8px);box-shadow:0 25px 50px -35px #5b2c19}.badge{position:absolute;top:-14px;right:18px;background:var(--ember);color:#fff;border-radius:999px;padding:.35rem .7rem;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.price h3{font-size:1.6rem}.amount{font:700 2.7rem var(--serif);color:var(--ink);margin:.4rem 0}.amount small{font:500 1rem var(--sans);color:var(--muted)}.checklist{padding:0;list-style:none;margin:1.4rem 0}.checklist li{padding:.45rem 0;padding-left:1.5rem;position:relative}.checklist li:before{content:'✓';position:absolute;left:0;color:var(--ember);font-weight:900}.examples-grid{display:grid;gap:1.2rem;margin-top:2.5rem}@media(min-width:800px){.examples-grid{grid-template-columns:repeat(3,1fr)}}.example-card{overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:18px}.example-art{height:170px;display:flex;align-items:flex-end;padding:1.2rem;color:#fff;position:relative}.example-art:after{content:'';position:absolute;inset:18px;border:1px solid #fff6;border-radius:10px}.example-art h3{position:relative;z-index:1;color:#fff;margin:0;font-size:1.45rem}.example-body{padding:1.2rem}.example-body p{font-size:.93rem;min-height:4.3em}.example-body a{font-weight:800;color:var(--ember2);text-decoration:none}.demo{background:#fff;border-radius:18px;border:1px solid var(--line);overflow:hidden;box-shadow:0 25px 60px -45px #2b211b}.demo-top{padding:1rem 1.3rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.demo-brand{font:700 1.1rem var(--serif);color:var(--ink)}.demo-hero{padding:4rem 2rem;background:linear-gradient(135deg,var(--demo-primary),var(--demo-secondary));color:#fff}.demo-hero h2{color:#fff;font-size:clamp(2rem,5vw,3.5rem);max-width:12ch}.demo-content{padding:2rem;display:grid;gap:1rem}@media(min-width:800px){.demo-content{grid-template-columns:1fr 1fr}}.demo-box{padding:1.2rem;background:var(--cream);border-radius:12px}.muted{color:var(--muted)}@media(max-width:720px){.links a:not(.btn){display:none}.hero{padding-top:3.5rem}.house{min-height:330px}.crest{width:160px;height:125px}}
.demo-art{min-height:190px;display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem;color:#fff;position:relative;overflow:hidden}
.demo-art span{font:700 2rem/1 Georgia,serif;position:relative;z-index:1}.demo-art small{font-weight:700;letter-spacing:.12em;text-transform:uppercase;position:relative;z-index:1;margin-top:.45rem}.demo-art:after{content:"";position:absolute;inset:20% -10% -35%;border-radius:50%;background:rgba(255,255,255,.12);transform:rotate(-8deg)}.demo-art.one{background:linear-gradient(135deg,#6b4027,#241a15)}.demo-art.two{background:linear-gradient(135deg,#c96b32,#4a281e)}.demo-art.three{background:linear-gradient(135deg,#35545a,#17282d)}.demo-art.four{background:linear-gradient(135deg,#7d6952,#30291f)}
.demo-badge{display:inline-block;background:var(--ember);color:#fff;font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .6rem;border-radius:999px;position:relative;z-index:1;margin-bottom:.5rem;width:fit-content}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--char);color:#fff;padding:.75rem 1.1rem;border-radius:0 0 10px 0;z-index:100;font-weight:700}
.skip-link:focus{left:0}
.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem}
.footer-brand{line-height:1.6}
.footer-links{display:flex;flex-wrap:wrap;gap:.3rem 1.2rem}
.footer-links a{text-decoration:none;font-weight:650}
.footer-links a:hover{text-decoration:underline}
.radio-field{border:0;padding:0;margin:0 0 1rem}
.radio-field legend{font-weight:700;color:var(--ink);font-size:.92rem;margin-bottom:.35rem;padding:0}
.radio-row{display:flex;gap:1.5rem;margin-top:.35rem}
.radio-row label{display:flex;align-items:center;gap:.4rem;font-weight:600;margin-bottom:0}
.radio-row input{width:auto;margin:0}
.input-suffix{display:flex;align-items:center;gap:.5rem}
.input-suffix input{width:auto;flex:1}
.input-suffix span{color:var(--muted);font-weight:600;white-space:nowrap}
.field-hint{font-size:.82rem;color:var(--muted);font-weight:500;margin:.3rem 0 0}
.coming-soon{display:inline-block;font:700 1.5rem var(--serif);color:var(--ember2);margin:.4rem 0 1rem}

/* Mobile overflow fixes */
html,body{max-width:100%;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
.wrap{width:100%;min-width:0}
input,textarea,select{min-width:0;max-width:100%}
.cta-grid>*,.row>*,form.card{min-width:0}
.input-suffix input{min-width:0}
@media(max-width:720px){
  h1{font-size:clamp(2.35rem,10vw,3.2rem)}
  h2{font-size:clamp(1.85rem,8vw,2.35rem)}
  .radio-row{flex-direction:column;gap:.55rem}
  .input-suffix{gap:.35rem}
  .input-suffix span{font-size:.9rem}
}
@media(max-width:849px){
  .section .wrap.cta-grid{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .section .wrap.cta-grid>div,.section .wrap.cta-grid>form{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .section .wrap.cta-grid h1,.section .wrap.cta-grid h2,.section .wrap.cta-grid h3,.section .wrap.cta-grid p{max-width:100%!important;overflow-wrap:break-word;word-break:normal}
  .section .wrap.cta-grid form.card{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
}
@media screen and (max-width:900px){html,body{width:100%!important;min-width:0!important;max-width:100%!important;overflow-x:hidden!important}.wrap{width:auto!important;max-width:none!important;min-width:0!important;margin-left:0!important;margin-right:0!important;padding-left:24px!important;padding-right:24px!important}.subhero .wrap,.section .wrap{width:100%!important;max-width:100%!important}.cta-grid{display:block!important;width:100%!important}.cta-grid>div,.cta-grid>form,form.card{width:100%!important;max-width:100%!important;min-width:0!important}.subhero h1,.section h2,.section p{max-width:100%!important;overflow-wrap:anywhere!important}.subhero h1{font-size:clamp(2.25rem,9vw,3.2rem)!important}.section h2{font-size:clamp(2rem,8vw,2.7rem)!important}form.card{overflow:hidden!important}.row{display:block!important;width:100%!important}.row>label{width:100%!important}.input-suffix{width:100%!important;max-width:100%!important}.input-suffix input{flex:1 1 auto!important;width:1px!important;min-width:0!important}}
