:root{--cream:#faf6ef;--ivory:#fffdf8;--brown:#2b211a;--muted:#6e6257;--terracotta:#c2562e;--olive:#6b7a3a;--line:#dfd3c4;--shadow:0 18px 42px rgba(43,33,26,.16);--ease:cubic-bezier(.16,1,.3,1);--content:1100px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--brown);font-family:Charter,Cambria,Georgia,serif;font-size:17px;line-height:1.7;overflow-wrap:anywhere;hyphens:auto}
img{display:block;width:100%;height:auto;object-fit:cover}
a{color:var(--terracotta);text-underline-offset:.2em}
a:hover{color:#8f351b}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--olive);outline-offset:3px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{line-height:1.12;overflow-wrap:anywhere}
h1{font-size:clamp(2.8rem,6vw,5.6rem);letter-spacing:-.045em;margin-bottom:1.2rem}
h2{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.025em}
h3{font-size:1.5rem}
p{max-width:72ch}
.site-header{position:relative;z-index:5;margin:18px auto 0;width:min(calc(100% - 32px),1160px);padding:12px 18px;background:var(--ivory);border:1px solid var(--line);border-radius:999px;box-shadow:0 8px 28px rgba(43,33,26,.08);display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:10px;color:var(--brown);font-weight:700;text-decoration:none;white-space:nowrap}
.brand-mark{width:34px;height:34px;display:grid;place-items:center;background:var(--terracotta);color:var(--ivory);border-radius:50%;font-size:18px}
.nav-links{display:flex;align-items:center;gap:clamp(12px,2.2vw,28px)}
.nav-links a{color:var(--brown);font-size:.96rem;text-decoration:none}
.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--terracotta);text-decoration:underline}
.menu-toggle{display:none;border:0;background:transparent;color:var(--brown);font:inherit;font-size:1.8rem;line-height:1;padding:5px 10px;cursor:pointer}
.wrap{width:min(calc(100% - 40px),var(--content));margin-inline:auto}
.band{position:relative;padding:88px 0}
.band-cream{background:var(--cream)}
.band-ivory{background:var(--ivory);clip-path:polygon(0 3%,100% 0,100% 97%,0 100%)}
.band-olive{background:#e8e8d9;clip-path:polygon(0 0,100% 3%,100% 100%,0 97%)}
.band-rust{background:#f0dfd2;clip-path:polygon(0 3%,100% 0,100% 97%,0 100%)}
.eyebrow,.badge,.step-number{font-size:.75rem;font-variant:small-caps;letter-spacing:.14em;font-weight:700;text-transform:uppercase}
.eyebrow{color:var(--olive);margin-bottom:14px}
.hero{padding:66px 0 90px;background:linear-gradient(135deg,#f4eadb 0%,var(--cream) 56%,#e7dfca 100%);position:relative}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:45px}
.hero-copy{position:relative;z-index:2}
.hero-copy p{font-size:1.17rem;color:var(--muted)}
.hero-images{height:430px;position:relative}
.hero-photo{position:absolute;overflow:hidden;box-shadow:var(--shadow);background:#68584a}
.hero-photo img{height:100%;filter:brightness(.78) saturate(.78)}
.hero-photo.one{width:54%;height:76%;left:0;top:13%;transform:rotate(-5deg)}
.hero-photo.two{width:50%;height:68%;right:0;top:0;transform:rotate(4deg)}
.hero-photo.three{width:53%;height:59%;left:28%;bottom:0;transform:rotate(1deg)}
.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 23px;border:0;border-radius:999px;background:var(--terracotta);color:#fffdf8;text-decoration:none;font:700 1rem Charter,Cambria,Georgia,serif;cursor:pointer;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .25s}
.button:hover{background:#a84424;color:white;transform:translateY(-3px) scale(1.02);box-shadow:var(--shadow)}
.button.secondary{background:var(--olive)}
.button.secondary:hover{background:#52602b}
.section-intro{max-width:710px;margin:0 auto 40px;text-align:center}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px}
.card{background:var(--ivory);box-shadow:0 9px 26px rgba(43,33,26,.09);transition:transform .45s var(--ease),box-shadow .45s var(--ease);height:100%}
.card:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow)}
.card-image{height:230px;position:relative}
.card-image img{height:100%;filter:brightness(.82) saturate(.8)}
.badge{position:absolute;left:18px;bottom:-13px;background:var(--olive);color:white;padding:6px 12px}
.card-body{padding:29px 24px 25px}
.card-body h3 a{color:var(--brown);text-decoration:none}
.card-body h3 a:hover{color:var(--terracotta)}
.card-body p{color:var(--muted);margin-bottom:0}
.feature-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:52px}
.feature-row.reverse .feature-image{order:2}
.feature-image{height:390px;overflow:hidden;box-shadow:var(--shadow)}
.feature-image img{height:100%;filter:brightness(.82) saturate(.82)}
.copy-column{max-width:650px}
.copy-column p{color:#51443a}
.checklist{padding:0;list-style:none}
.checklist li{padding:12px 0 12px 34px;border-bottom:1px solid var(--line);position:relative}
.checklist li:before{content:"✓";position:absolute;left:0;color:var(--olive);font-weight:bold}
.steps{counter-reset:steps;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.step{padding:24px;background:var(--ivory);border-top:3px solid var(--terracotta)}
.step-number{display:inline-block;color:var(--terracotta);margin-bottom:10px}
.article-hero{padding:70px 0 55px;background:linear-gradient(130deg,#f0dfd2,#faf6ef 62%,#e8e8d9)}
.article-hero h1{max-width:850px;font-size:clamp(2.7rem,5.5vw,4.8rem)}
.article-hero p{font-size:1.15rem;color:var(--muted)}
.article-photo{height:390px;margin:35px 0 0;box-shadow:var(--shadow)}
.article-photo img{height:100%;filter:brightness(.82) saturate(.78)}
.prose{max-width:72ch;margin:0 auto;padding:58px 0 78px}
.prose h2{font-size:2rem;margin-top:2.4em}
.prose h3{margin-top:1.8em}
.prose p,.prose li{color:#51443a}
.prose li{padding:.2em 0}
.note{margin:26px 0;padding:20px 24px;background:#e8e8d9;border-left:4px solid var(--olive)}
.compare-wrap{overflow-x:auto;margin:28px 0}
table{width:100%;min-width:620px;border-collapse:collapse;background:var(--ivory)}
th,td{text-align:left;padding:14px;border-bottom:1px solid var(--line);vertical-align:top}
th{background:#e8e8d9}
.faq-list details{padding:20px 0;border-bottom:1px solid var(--line)}
.faq-list summary{font-size:1.2rem;font-weight:700;cursor:pointer}
.faq-list details p{margin:14px 0 0;color:var(--muted)}
.contact-form{display:grid;gap:14px}
.contact-form label{font-weight:700}
.contact-form input,.contact-form textarea{width:100%;padding:13px 14px;border:1px solid #b8a998;background:var(--ivory);border-radius:0;color:var(--brown);font:inherit}
.contact-form textarea{min-height:150px;resize:vertical}
.tool-actions{display:flex;flex-wrap:wrap;gap:12px}
#message-status{min-height:1.6em;color:var(--olive)}
.site-footer{background:var(--brown);color:#f8f0e5;padding:48px 0 28px}
.footer-inner{display:grid;grid-template-columns:1.3fr 1fr;gap:25px}
.site-footer a{color:#f3b599}
.site-footer p{color:#e4d6c8}
.footer-links{display:flex;flex-wrap:wrap;gap:14px 22px;align-content:start}
.footer-links a{white-space:nowrap}
.copyright{grid-column:1/-1;border-top:1px solid #66584e;padding-top:18px;margin:10px 0 0;font-size:.9rem}
.reveal{opacity:0;transform:translateY(22px);transition:all .7s var(--ease)}
.reveal-visible{opacity:1;transform:translateY(0)}
@media(max-width:767px){.site-header{border-radius:16px;padding:10px 13px}.menu-toggle{display:block;margin-left:auto}.nav-links{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;padding:16px;background:var(--ivory);border:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:0}.nav-links.is-open{display:flex}.nav-links a{padding:11px 9px;border-bottom:1px solid var(--line)}.hero{padding:45px 0 65px}.hero-grid,.feature-row{grid-template-columns:1fr;gap:28px}.hero-images{height:330px}.feature-row.reverse .feature-image{order:0}.feature-image{height:300px}.band{padding:68px 0}.band-ivory,.band-olive,.band-rust{clip-path:none}.article-photo{height:270px}.footer-inner{grid-template-columns:1fr}.copyright{grid-column:auto}}
@media(max-width:480px){body{font-size:16px}.wrap{width:min(calc(100% - 30px),var(--content))}.brand{font-size:.93rem}.brand-mark{width:30px;height:30px}.hero-images{height:275px}.hero-photo.one{height:72%}.hero-photo.two{height:64%}.hero-photo.three{height:54%}.card-image{height:205px}.article-hero{padding:48px 0 38px}.article-photo{height:220px}.band{padding:55px 0}.tool-actions{display:grid}}
@media(min-width:481px) and (max-width:768px){.wrap{width:calc(100% - 44px)}}
@media(min-width:769px) and (max-width:1024px){.wrap{width:calc(100% - 56px)}.hero-grid{gap:28px}.hero-images{height:370px}}
@media(min-width:1025px){.wrap{width:min(calc(100% - 64px),var(--content))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}