:root{--bg-canvas:#f3e9d8;--bg-surface:#fffaf2;--bg-surface-hover:#f7e7d5;--text-primary:#262626;--text-muted:#62584f;--accent-primary:#c2410c;--accent-secondary:#78350f;--border-subtle:#d8c8b5;--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 12px 32px -4px rgba(38,38,38,.18);--glow-accent:0 0 24px -12px #c2410c;--glass-backdrop:blur(16px) saturate(120%);--serif:Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font-family:var(--sans);line-height:1.65;overflow-wrap:anywhere;hyphens:auto}h1,h2,h3{font-family:var(--serif);line-height:1.12;letter-spacing:-.025em}h1{font-size:clamp(2.7rem,6vw,5.3rem);max-width:13ch;margin:.2em 0 .35em}h2{font-size:clamp(2rem,3vw,3rem);margin:0 0 .55em}h3{font-size:1.45rem;margin:.2em 0 .5em}p{max-width:70ch}a{color:var(--accent-secondary);text-underline-offset:.2em}a:hover{color:var(--accent-primary)}:focus-visible{outline:3px solid var(--accent-primary);outline-offset:4px}img{display:block;width:100%;height:auto;object-fit:cover}.site-header{position:relative;z-index:5;background:transparent;border-bottom:1px solid transparent;transition:background .3s,border-color .3s}.site-header.scrolled{background:var(--bg-canvas);border-color:var(--border-subtle)}.header-inner{max-width:1200px;margin:auto;padding:1rem 1.3rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{font-family:var(--serif);font-weight:700;text-decoration:none;color:var(--text-primary);font-size:1.05rem;white-space:nowrap}.brand-mark{display:inline-grid;place-items:center;width:2rem;height:2rem;margin-right:.55rem;background:var(--accent-primary);color:#fffaf2;border-radius:50%;font-family:var(--sans);font-size:.8rem}.desktop-nav{display:flex;gap:1.25rem;align-items:center}.desktop-nav a,.mobile-menu a{font-size:.88rem;text-decoration:none;font-weight:650}.menu-toggle{display:none;border:0;background:none;color:var(--text-primary);font-size:2rem;line-height:1;cursor:pointer}.mobile-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg-surface);padding:1rem 1.3rem 1.4rem;border-bottom:1px solid var(--border-subtle);box-shadow:var(--shadow-elevation)}.mobile-menu.open{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}.wrap{width:min(1200px,calc(100% - 2.5rem));margin-inline:auto}.prose{max-width:70ch;margin-inline:auto}.hero{padding:3.8rem 0 4.8rem;background:var(--bg-canvas);position:relative}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:3rem;align-items:center}.hero-copy{padding:1rem 0}.eyebrow,.kicker{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:750;color:var(--accent-secondary)}.hero p{font-size:1.12rem;color:var(--text-muted)}.hero-photo{position:relative}.hero-photo img{aspect-ratio:4/3;filter:brightness(.78);box-shadow:var(--shadow-elevation)}.outline-button,.button{display:inline-block;padding:.85rem 1.1rem;border:1px solid var(--accent-primary);background:transparent;color:var(--text-primary);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:transform .3s var(--ease-kinetic),box-shadow .3s,background .3s}.outline-button:hover,.button:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent);background:var(--bg-surface-hover);color:var(--text-primary)}.section{padding:5rem 0;position:relative}.section.cream{background:var(--bg-surface);clip-path:polygon(0 2%,100% 0,100% 98%,0 100%)}.section-inner{position:relative}.section-intro{margin-bottom:2rem}.section-intro p{color:var(--text-muted)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.35rem}.card{background:var(--bg-surface);border:1px solid var(--border-subtle);transition:transform .35s var(--ease-kinetic),box-shadow .35s;overflow:visible}.card:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent)}.card-image{position:relative}.card-image img{aspect-ratio:4/3}.badge{position:relative;display:inline-block;margin:-1rem 0 0 1rem;padding:.38rem .8rem;border-radius:99px;background:var(--accent-primary);color:#fffaf2;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.card-body{padding:1.1rem 1.25rem 1.35rem}.card-body p{color:var(--text-muted)}.card-body a{font-weight:700}.sequence{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;counter-reset:step}.sequence article{border-top:2px solid var(--accent-primary);padding:1.1rem;background:rgba(255,250,242,.65)}.sequence article h3:before{counter-increment:step;content:"0" counter(step) " / ";font:700 .78rem var(--sans);color:var(--accent-primary);letter-spacing:.1em}.paired-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 2rem}.paired-list article{border-bottom:1px solid var(--border-subtle);padding:1rem 0}.paired-list p{margin:.4rem 0;color:var(--text-muted)}.feature-band{background:#262626;color:#fffaf2;padding:3rem}.feature-band p{color:#eee0ce}.table-wrap{overflow-x:auto}.checks{border-collapse:collapse;width:100%;min-width:620px;background:var(--bg-surface)}.checks th,.checks td{text-align:left;padding:.9rem;border-bottom:1px solid var(--border-subtle);vertical-align:top}.checks th{color:var(--accent-secondary)}.article-hero{padding:3.4rem 0 2rem}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:3rem;align-items:start}.article-copy{max-width:70ch}.article-copy h2{margin-top:2.2em;font-size:2rem}.article-copy h3{margin-top:1.5em}.article-copy p,.article-copy li{color:#3f3934}.article-aside{background:var(--bg-surface);border-left:3px solid var(--accent-primary);padding:1.3rem;position:relative}.article-aside a{display:block;margin:.55rem 0}.wide-photo{margin:2rem 0}.wide-photo img{aspect-ratio:16/9}.faq-list details{padding:1rem 0;border-bottom:1px solid var(--border-subtle)}.faq-list summary{font-family:var(--serif);font-size:1.2rem;font-weight:700;cursor:pointer}.faq-list details p{margin-bottom:0;color:var(--text-muted)}.page-title{padding:3rem 0 1.5rem}.page-title h1{font-size:clamp(2.6rem,5vw,4.4rem)}.contact-form{display:grid;gap:1rem;max-width:700px}.contact-form label{font-weight:700}.contact-form input,.contact-form textarea{display:block;width:100%;padding:.8rem;border:1px solid var(--border-subtle);background:var(--bg-surface);font:inherit;color:var(--text-primary)}.contact-form textarea{min-height:150px;resize:vertical}.tool-actions{display:flex;gap:.75rem;flex-wrap:wrap}.preview{white-space:pre-wrap;padding:1rem;background:var(--bg-surface);border:1px solid var(--border-subtle);min-height:5rem}.site-footer{background:#262626;color:#fffaf2;padding:3rem 0 1rem}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:2rem}.site-footer a{color:#f2c7a5}.site-footer p,.site-footer address{font-size:.9rem;color:#e4d9cb}.site-footer address{font-style:normal}.footer-bottom{border-top:1px solid #63564c;margin-top:2rem;padding-top:1rem;font-size:.85rem;color:#e4d9cb}.reveal{opacity:0;transform:translateY(18px);transition:all .7s var(--ease-kinetic)}.reveal.reveal-visible{opacity:1;transform:translateY(0)}.notice{padding:1rem 1.2rem;border-left:3px solid var(--accent-primary);background:var(--bg-surface)}.skip-link{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:.5rem}.skip-link:focus{left:1rem;z-index:20}
@media(max-width:768px){.desktop-nav{display:none}.menu-toggle{display:block}.hero{padding:2rem 0 3rem}.hero-grid{grid-template-columns:1fr;gap:1.5rem}.hero-photo{order:-1}.hero-photo img{aspect-ratio:16/10}.section{padding:3.5rem 0}.section.cream{clip-path:none}.article-layout{grid-template-columns:1fr}.article-aside{order:-1}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid section:last-child{grid-column:1/-1}.paired-list{grid-template-columns:1fr}}
@media(max-width:480px){.wrap{width:min(100% - 1.5rem,1200px)}.header-inner{padding:.8rem}.brand{font-size:.88rem}.brand-mark{width:1.7rem;height:1.7rem}.hero h1{font-size:2.65rem}.footer-grid{grid-template-columns:1fr}.footer-grid section:last-child{grid-column:auto}.feature-band{padding:1.5rem}.tool-actions>*{width:100%;text-align:center}}
@media(min-width:769px) and (max-width:1024px){.hero-grid{gap:1.5rem}.article-layout{grid-template-columns:minmax(0,1fr) 240px}}
@media(min-width:1025px){.wrap{width:min(1200px,calc(100% - 3rem))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}