/* Peak Patios — Stone & Timber Editorial Design System (inner pages) */
@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Inter:wght@300;400;500;600&display=swap');

:root{
  --bone:#F5EFE6; --cream:#FAF6EC; --bone-2:#EAE2D2;
  --slate:#2C2A26; --slate-2:#3E3A33;
  --walnut:#8E6F4E; --walnut-deep:#5d4530;
  --clay:#B85B3D; --clay-2:#9c4830; --clay-soft:#e0a48b;
  --moss:#6b7a4e;
  --ink:#3E3A33; --ink-2:#6b6358; --ink-3:#a09787;
  --rule:#d6cdb9;
  --display:'DM Serif Display',Georgia,serif;
  --serif:'Cormorant Garamond',Georgia,serif;
  --body:'Inter',ui-sans-serif,system-ui,sans-serif;
  --copper:var(--clay); --copper-deep:var(--clay-2); --copper-light:var(--clay-soft);
  --navy:var(--slate); --navy-deep:var(--slate); --navy-darker:var(--slate); --navy-mid:var(--bone-2);
  --text-mute:var(--ink-2); --text-dim:var(--ink-3);
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bone);color:var(--ink);font-family:var(--body);line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{max-width:1280px;margin:0 auto;padding:0 32px}
h1,h2,h3,h4,h5{font-family:var(--display);font-weight:400;letter-spacing:-.01em;line-height:1.05;color:var(--slate)}
.copper,.accent{color:var(--clay);font-style:italic;font-family:var(--serif);font-weight:500}

.topbar{background:var(--clay);color:var(--bone);font-family:var(--body);font-size:12px;padding:11px 0;letter-spacing:.06em;font-weight:500;border-bottom:0;text-transform:none}
.topbar .container{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.topbar a{color:#fff;font-weight:600;border-bottom:1px solid rgba(255,255,255,.4)}

header.site{background:var(--bone);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:50}
header.site .container.nav,header.site .nav{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;gap:24px;max-width:1280px;margin:0 auto}
.logo{display:flex;align-items:center;gap:14px;font-family:var(--display);font-size:24px;font-weight:400;letter-spacing:-.01em;color:var(--slate);text-transform:none}
.logo .ring,.logo .mark{width:42px;height:42px;border:1.5px solid var(--clay);border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:400;color:var(--clay);background:var(--bone);font-family:var(--display)}
.logo .copper,.logo .accent{color:var(--clay);font-style:italic;font-weight:400;font-family:var(--serif);font-size:24px;text-transform:none;letter-spacing:0}
nav ul,nav ul.menu{list-style:none;display:flex;gap:30px;margin:0;padding:0}
nav a{font-family:var(--body);font-size:14px;font-weight:500;color:var(--ink-2);transition:color .15s}
nav a:hover{color:var(--clay)}
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;font-family:var(--body);font-size:13px;font-weight:600;letter-spacing:.04em;border:1.5px solid var(--slate);transition:.15s;cursor:pointer;border-radius:2px;text-decoration:none}
.btn-primary{background:var(--clay);color:#fff;border-color:var(--clay)}
.btn-primary:hover{background:var(--clay-2);border-color:var(--clay-2)}
.btn-ghost{background:transparent;color:var(--slate)}
.btn-ghost:hover{background:var(--slate);color:var(--bone)}
.hamburger{display:none;background:none;border:1.5px solid var(--slate);font-size:18px;width:46px;height:46px;cursor:pointer;color:var(--slate);border-radius:2px;padding:0;align-items:center;justify-content:center}

.page-hero{background:var(--bone)!important;padding:120px 0 80px!important;color:var(--slate)!important;position:relative;border-bottom:1px solid var(--rule)}
.page-hero .breadcrumb{font-family:var(--body);font-size:11px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--clay);margin-bottom:24px;display:flex;align-items:center;gap:14px}
.page-hero .breadcrumb::before{content:"";display:inline-block;width:30px;height:1px;background:var(--clay)}
.page-hero h1{font-family:var(--display);font-weight:400;font-size:clamp(48px,7vw,108px);letter-spacing:-.015em;line-height:1.0;margin-bottom:24px;text-transform:none;color:var(--slate)}
.page-hero h1 .copper,.page-hero h1 .accent{color:var(--clay);font-family:var(--serif);font-style:italic;font-weight:500}
.page-hero .lead{font-size:19px;line-height:1.7;color:var(--ink-2);max-width:680px;margin-bottom:0;font-weight:400}
.page-hero .actions{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap}

section{padding:120px 0}
.bg-deep,.bg-darker{background:var(--slate)!important;color:var(--bone)!important;border:0;position:relative}
.bg-deep::before,.bg-darker::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--clay),transparent)}
.bg-deep h1,.bg-deep h2,.bg-deep h3,.bg-darker h1,.bg-darker h2,.bg-darker h3{color:var(--bone)}
.bg-deep p,.bg-darker p{color:rgba(255,255,255,.75)}
.bg-deep .copper,.bg-deep .accent,.bg-darker .copper,.bg-darker .accent{color:var(--clay-soft)}
.bg-deep .eyebrow,.bg-darker .eyebrow{color:var(--clay-soft)}
.bg-deep .eyebrow::before,.bg-darker .eyebrow::before{background:var(--clay-soft)}
.bg-light{background:var(--cream)}

.eyebrow{font-family:var(--body);font-size:11px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--clay);margin-bottom:24px;display:inline-flex;align-items:center;gap:14px}
.eyebrow::before{content:"";width:30px;height:1px;background:var(--clay)}
.eyebrow.center::before{display:none}
.h-section{font-family:var(--display);font-weight:400;font-size:clamp(40px,5.5vw,80px);letter-spacing:-.015em;line-height:1.05;text-transform:none;color:inherit}
.h-section span,.h-section .copper,.h-section .accent{color:var(--clay);font-family:var(--serif);font-style:italic;font-weight:500}

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}

.card,.h-card{background:var(--cream);border:1px solid var(--rule);border-radius:4px;padding:36px 32px;transition:transform .25s,box-shadow .25s;display:block}
.card:hover,.h-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px rgba(44,42,38,.1)}
.card h3,.h-card h3{font-family:var(--display);font-weight:400;font-size:28px;letter-spacing:-.01em;margin-bottom:10px;line-height:1.05}
.card h3 em,.h-card h3 em{color:var(--clay);font-family:var(--serif);font-style:italic;font-weight:500}
.card p,.h-card p{font-size:15px;color:var(--ink-2);line-height:1.7}
.tag{display:inline-block;font-family:var(--body);font-size:11px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--clay);margin-bottom:12px}

.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:36px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.stat{padding:28px 0;border-right:1px solid var(--rule);text-align:center}
.stat:last-child{border-right:0}
.stat .n{font-family:var(--display);font-size:48px;font-weight:400;color:var(--clay);line-height:1}
.stat .l{font-family:var(--serif);font-style:italic;font-size:14px;color:var(--ink-2);margin-top:8px;font-weight:500}
.bg-deep .stats,.bg-darker .stats{border-color:rgba(255,255,255,.15)}
.bg-deep .stat,.bg-darker .stat{border-color:rgba(255,255,255,.15)}
.bg-deep .stat .n,.bg-darker .stat .n{color:var(--clay-soft)}
.bg-deep .stat .l,.bg-darker .stat .l{color:rgba(255,255,255,.6)}
.num{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--clay);font-size:16px;margin-bottom:8px;display:block}

.pull{font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(24px,3vw,38px);line-height:1.4;color:var(--slate);max-width:760px;border-left:3px solid var(--clay);padding:8px 24px;margin:32px 0}

.faq-item{padding:28px 0;border-bottom:1px solid var(--rule)}
.faq-item h3{font-family:var(--display);font-weight:400;font-size:24px;margin-bottom:8px;line-height:1.2}
.faq-item p{font-size:15px;color:var(--ink-2);line-height:1.7}

.form-card{background:var(--cream);border:1px solid var(--rule);border-radius:4px;padding:48px;max-width:640px;margin:0 auto}
.form-card h2{margin-bottom:8px}
.form-card label{display:block;font-family:var(--body);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);margin:18px 0 8px}
.form-card input,.form-card textarea,.form-card select{width:100%;padding:12px 14px;font-family:var(--body);font-size:15px;border:1px solid var(--rule);background:var(--bone);color:var(--slate);border-radius:2px}
.form-card input:focus,.form-card textarea:focus,.form-card select:focus{outline:none;border-color:var(--clay)}
.form-card button{margin-top:24px}

.actions{display:flex;gap:14px;flex-wrap:wrap}
.lead{font-size:18px;line-height:1.75;color:var(--ink-2);max-width:680px;font-weight:400}

footer.site{background:var(--slate);color:#a09787;padding:80px 0 32px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;margin-bottom:60px}
footer.site h4{font-family:var(--serif);font-style:italic;font-size:20px;font-weight:500;color:var(--clay-soft);margin-bottom:20px;letter-spacing:0;text-transform:none}
footer.site .logo{margin-bottom:20px;color:var(--bone)}
footer.site .logo .ring,footer.site .logo .mark{border-color:var(--clay-soft);color:var(--clay-soft);background:transparent}
footer.site .logo .copper,footer.site .logo .accent{color:var(--clay-soft)}
footer.site ul{list-style:none}
footer.site li{margin-bottom:9px;font-size:14px}
footer.site li a{color:#a09787;transition:color .15s}
footer.site li a:hover{color:var(--clay-soft)}
.foot-bot{font-family:var(--serif);font-style:italic;font-size:14px;color:#7a7268;border-top:1px solid #4a463e;padding-top:28px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px}

@media (max-width:1024px){
  .grid-2{grid-template-columns:1fr;gap:40px}
  .grid-3{grid-template-columns:1fr 1fr;gap:24px}
  .grid-4{grid-template-columns:1fr 1fr;gap:24px}
  .foot-grid{grid-template-columns:1fr 1fr;gap:36px}
}
@media (max-width:768px){
  header.site nav{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100vh;background:var(--cream);padding:80px 32px;transition:right .25s;z-index:60;border-left:1px solid var(--rule)}
  header.site nav.open{right:0;box-shadow:-12px 0 32px rgba(44,42,38,.1)}
  header.site nav ul,header.site nav ul.menu{flex-direction:column;gap:0}
  header.site nav a{font-size:18px;padding:18px 0;border-bottom:1px solid var(--rule);display:block;font-family:var(--display)}
  .hamburger{display:inline-flex;z-index:70;position:relative}
  header.site .container.nav > .btn,header.site .nav > .btn{display:none!important}
  section,.page-hero{padding:64px 0!important}
  .grid-3,.grid-4{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr;gap:36px}
  .stats{grid-template-columns:1fr 1fr 1fr}
  .stat .n{font-size:32px}
  .form-card{padding:32px 24px}
}
