@import url('https://fonts.googleapis.com/css2?family=Fraunces:wght@600;700;800&family=Inter:wght@500;600;700&display=swap');
:root{--cream:#fff8ee;--paper:#fffdf8;--sage:#8fae93;--peach:#eeb39e;--sky:#c6d8df;--ink:#27332d;--muted:#6c756e;--line:#eadfd1}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,var(--cream),#f8efe3);color:var(--ink);font-family:Inter,system-ui,sans-serif}.nav{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:22px clamp(18px,4vw,58px);position:sticky;top:0;background:rgba(255,248,238,.92);backdrop-filter:blur(10px);z-index:2;border-bottom:1px solid var(--line)}.brand{font-family:Fraunces,serif;font-weight:800;color:var(--ink);text-decoration:none;font-size:clamp(20px,3vw,31px)}.nav-cta,.btn{border-radius:999px;padding:13px 18px;text-decoration:none;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.nav-cta,.primary{background:var(--ink);color:#fff}.ghost{border:1px solid var(--ink);color:var(--ink)}main{overflow:hidden}.hero{display:grid;grid-template-columns:1.02fr .98fr;gap:34px;padding:clamp(28px,6vw,88px) clamp(18px,5vw,72px);align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:#9a6757;font-weight:900}.hero h1{font-family:Fraunces,serif;font-size:clamp(43px,8vw,92px);line-height:.92;margin:12px 0 20px;letter-spacing:-.045em}.hero p,.section p,footer{font-size:clamp(16px,2vw,20px);line-height:1.7;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.hero-img{border-radius:36px;overflow:hidden;box-shadow:0 28px 70px rgba(39,51,45,.18);border:10px solid #fff}.hero-img img{display:block;width:100%;height:auto}.strip{display:flex;gap:10px;flex-wrap:wrap;padding:0 clamp(18px,5vw,72px) 34px}.strip span{background:#fff;border:1px solid var(--line);padding:10px 14px;border-radius:999px;font-weight:800;color:#8b6a5d}.section{padding:clamp(34px,6vw,80px) clamp(18px,5vw,72px)}.section h2{font-family:Fraunces,serif;font-size:clamp(31px,5vw,58px);line-height:1;margin:8px 0 28px;letter-spacing:-.035em}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{min-height:235px;background:linear-gradient(145deg,#fff,var(--paper));border:1px solid var(--line);border-radius:28px;padding:24px;text-decoration:none;color:var(--ink);box-shadow:0 18px 42px rgba(39,51,45,.08);transition:.2s transform}.card:hover{transform:translateY(-4px)}.card span{display:inline-block;background:var(--sky);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;color:#31515d}.card strong{display:block;font-family:Fraunces,serif;font-size:28px;line-height:1.05;margin:18px 0 10px}.card p{font-size:15px;margin:0}.feature{display:grid;grid-template-columns:1.1fr auto;gap:22px;align-items:center;background:rgba(255,255,255,.48);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}footer{padding:28px clamp(18px,5vw,72px);font-size:14px}@media(max-width:860px){.hero,.feature{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.nav{align-items:flex-start;flex-direction:column}.hero h1{font-size:48px}.hero-img{border-radius:24px;border-width:6px}.section{padding-top:44px}.card{min-height:auto}.feature .btn{width:100%}}

/* Full portfolio audit hardening 2026-07-14 */
html,body{max-width:100%;}img,svg,video,canvas{max-width:100%;height:auto}.hero,.grid,.section,.cards,.card,.panel,.wrap,.container,main,header,footer{max-width:100%;box-sizing:border-box}pre,code{white-space:pre-wrap;word-break:break-word}@media(max-width:900px){body{overflow-x:clip}.hero,.split,.feature,.grid,.cards,.columns{grid-template-columns:1fr!important}.section,main,header,footer{padding-left:min(6vw,22px)!important;padding-right:min(6vw,22px)!important}.card,.panel,.tile,.feature,.hero{min-width:0!important}h1,h2,h3,p,a,span{overflow-wrap:anywhere}.nav,.nav-inner{max-width:100%;flex-wrap:wrap!important}}
