:root{--ink:#090d0b;--forest:#101914;--cream:#f4ebdd;--copper:#b76e3b;--gold:#c99a3d;--muted:#b8afa2}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--cream);font-family:Montserrat,Arial,sans-serif}
.skip{position:absolute;left:-999px}
.skip:focus{left:15px;top:15px;background:#fff;color:#000;padding:12px;z-index:99}
.announcement{text-align:center;padding:16px 24px;background:#0e1813;border-bottom:1px solid #7c5d28;color:#f1e6d8;font-family:"Cormorant Garamond",serif;font-size:20px;font-weight:600;letter-spacing:.035em}
.announcement span{display:inline-block;height:18px;border-left:1px solid #b78e48;margin:0 22px;vertical-align:middle}
.header{height:105px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:absolute;top:48px;width:100%;z-index:5}
.brand{display:flex;align-items:center;gap:18px;color:var(--cream);text-decoration:none;letter-spacing:.17em}
.brand b{font:600 36px/1 "Cormorant Garamond",serif;color:var(--copper);border:1px solid var(--copper);padding:12px 10px}
.brand span{font:600 22px/1.2 "Cormorant Garamond",serif}
.brand small{display:block;font:500 10px/2 Montserrat,sans-serif;text-align:center;letter-spacing:.5em}
nav{display:flex;align-items:center;gap:38px}
nav a{color:#fff8ee;text-decoration:none;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;text-shadow:0 2px 8px rgba(0,0,0,.9)}
nav a:not(.nav-cta):hover{color:var(--gold)}
.nav-cta{border:1px solid #e1a56f;padding:19px 25px;background:rgba(10,8,9,.62);box-shadow:0 7px 24px rgba(0,0,0,.3)}
.menu{display:none}
.hero{height:825px;min-height:740px;background:url('hero-production.webp') center/cover no-repeat;position:relative;display:flex;align-items:center}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,10,7,.98) 0%,rgba(4,10,7,.85) 35%,rgba(4,10,7,.26) 66%,rgba(4,10,7,.08))}
.hero-copy{position:relative;z-index:2;width:53%;padding:125px 0 30px 5vw}
.eyebrow{color:#f0b864;text-transform:uppercase;letter-spacing:.18em;font-size:14px;font-weight:700;text-shadow:0 2px 10px rgba(0,0,0,.65)}
.hero h1,.section h2{font-family:"Cormorant Garamond",serif;font-weight:500;letter-spacing:-.025em}
.hero h1{font-size:clamp(52px,5vw,82px);line-height:.96;margin:20px 0 24px}
.lead{font:500 21px/1.7 Montserrat,sans-serif;max-width:680px;color:#f4eee7;text-shadow:0 2px 10px rgba(0,0,0,.7)}
.actions{display:flex;gap:24px;margin-top:34px}
.button{display:inline-block;border:1px solid var(--gold);background:linear-gradient(100deg,#a9572e,#c87b41);color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:14px;font-weight:700;padding:20px 28px;cursor:pointer}
.button:hover{filter:brightness(1.15);transform:translateY(-1px)}
.button.ghost{background:rgba(3,8,5,.45);color:#e9c275}
.scope{margin-top:42px;color:#efb85e;letter-spacing:.14em;font-size:14px;font-weight:600;text-shadow:0 2px 10px rgba(0,0,0,.8)}
.scope i{margin:0 18px;font-style:normal}
.trust{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #745725;border-bottom:1px solid #745725;background:#0d1712}
.trust div{text-align:center;padding:31px 20px;border-right:1px solid #59431e}
.trust div:last-child{border:0}
.trust strong{display:block;color:#d7a449;text-transform:uppercase;letter-spacing:.14em;font-size:12px;margin-bottom:9px}
.trust span{color:#bfb6aa;font-size:12px}
.section{padding:105px 7vw}
.intro{display:grid;grid-template-columns:1.15fr .85fr;gap:10vw;background:#f2e9dc;color:#1c201d}
.section h2{font-size:clamp(42px,4vw,66px);line-height:1;margin:18px 0 35px}
.intro p{font-size:16px;line-height:1.9;color:#5e5b55}
.center{text-align:center}
.services{background:#101914}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px;border:1px solid #493a23}
.service-grid article{padding:42px 30px;border-right:1px solid #493a23;min-height:280px}
.service-grid article:last-child{border:0}
.service-grid span{font-family:"Cormorant Garamond";color:var(--gold);font-size:26px}
.service-grid h3,.design-grid h3,.process h3{font:500 27px/1.1 "Cormorant Garamond",serif}
.service-grid p,.design-head p,.process p{color:var(--muted);font-size:14px;line-height:1.8}
.designs{background:#eee4d6;color:#1b201c}
.design-head{display:flex;justify-content:space-between;align-items:end}
.design-head>p{max-width:440px;color:#5e5b55}
.design-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:35px}
.design-grid article{background:#fff;padding-bottom:30px}
.swatch{height:340px;background:linear-gradient(rgba(95,45,20,.18),rgba(95,45,20,.45)),url('hero-production.webp') 70% 65%/cover}
.swatch.neutral{background:linear-gradient(rgba(228,220,200,.38),rgba(84,91,69,.45)),url('hero-production.webp') 52% 52%/cover;filter:saturate(.68)}
.swatch.dramatic{background:linear-gradient(rgba(10,18,13,.12),rgba(10,18,13,.58)),url('hero-production.webp') 90% 80%/cover;filter:contrast(1.08)}
.design-grid article p,.design-grid article h3,.design-grid article span{margin-left:28px;margin-right:28px}
.design-grid article p{color:#a26038;text-transform:uppercase;letter-spacing:.15em;font-size:10px;margin-top:25px}
.design-grid article span{color:#68645e;font-size:13px;line-height:1.7;display:block}
.process{background:#09100c}
.process ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:55px}
.process li{text-align:center;padding:30px}
.process li b{display:inline-grid;place-items:center;width:54px;height:54px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font:500 24px "Cormorant Garamond"}
.reserve{background:linear-gradient(110deg,#ebe1d3 0 50%,#152019 50%);display:grid;grid-template-columns:1fr 1fr;gap:11vw;color:#1b201c}
.reserve>div>p{font-size:15px;line-height:1.8;color:#5a5752}
.reserve li{margin:18px 0}
.reserve form{color:#ede5d9;display:grid;gap:17px}
.reserve label{font-size:11px;text-transform:uppercase;letter-spacing:.11em}
.reserve input,.reserve select,.reserve textarea{display:block;width:100%;margin-top:8px;padding:14px;background:#0e1712;border:1px solid #655535;color:#fff;font:14px Montserrat}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.reserve small{color:#a9a196;line-height:1.5}
.honey{position:absolute!important;left:-9999px!important}
footer{padding:60px 7vw 90px;display:flex;align-items:center;justify-content:space-between;gap:30px;color:#9f978c;font-size:12px}
.mobile-cta{display:none}
.reveal{animation:rise .8s ease both}
@keyframes rise{from{opacity:0;transform:translateY(16px)}
}

@media(max-width:980px){.header{height:auto;top:54px;padding-top:20px}
.menu{display:block;background:transparent;border:1px solid var(--copper);color:#fff;padding:12px;text-transform:uppercase;letter-spacing:.12em}
.header nav{position:absolute;top:85px;left:5vw;right:5vw;background:#0d1712;padding:25px;display:none;flex-direction:column;align-items:stretch}
.header nav.open{display:flex}
.hero-copy{width:74%}
.trust,.service-grid{grid-template-columns:repeat(2,1fr)}
.service-grid article:nth-child(2){border-right:0}
.design-grid{grid-template-columns:1fr}
.swatch{height:230px}
}

@media(max-width:680px){.announcement{font-size:14px}
.announcement span,.announcement span~*{display:none}
.brand span{font-size:16px}
.brand b{font-size:25px}
.hero{height:760px;background-position:63% center}
.hero-shade{background:linear-gradient(90deg,rgba(4,10,7,.96),rgba(4,10,7,.5))}
.hero-copy{width:100%;padding:140px 6vw 30px}
.hero h1{font-size:49px}
.lead{font-size:16px}
.actions{flex-direction:column;align-items:flex-start}
.scope{line-height:2}
.scope i{margin:0 6px}
.trust,.service-grid{grid-template-columns:1fr}
.trust div,.service-grid article{border-right:0;border-bottom:1px solid #493a23}
.section{padding:75px 6vw}
.intro,.reserve{grid-template-columns:1fr}
.intro{gap:25px}
.design-head{display:block}
.process ol{grid-template-columns:1fr}
.reserve{background:linear-gradient(#ebe1d3 0 43%,#152019 43%);gap:90px}
.form-row{grid-template-columns:1fr}
footer{flex-direction:column;align-items:flex-start;padding-bottom:100px}
.mobile-cta{display:block;position:fixed;z-index:20;bottom:0;left:0;right:0;text-align:center;background:#ad5e35;color:#fff;text-decoration:none;padding:18px;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.1em}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}

.faq{background:#efe5d8;color:#1b201c;display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}
.faq-heading>p:last-child{color:#666159;line-height:1.8}
.faq-list details{border-top:1px solid #bba98f;padding:22px 0}
.faq-list details:last-child{border-bottom:1px solid #bba98f}
.faq-list summary{cursor:pointer;font:600 22px/1.3 "Cormorant Garamond",serif;list-style:none;padding-right:35px;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:'+';position:absolute;right:5px;color:#a45f37}
.faq-list details[open] summary:after{content:'–'}
.faq-list details p{color:#67625b;font-size:14px;line-height:1.8;padding-right:35px}
.form-alert{background:#572d26;color:#fff1e6;border:1px solid #bd775a;padding:13px;font-size:12px;line-height:1.5}
footer a{color:#d6a652;text-decoration:none}
footer a:hover{text-decoration:underline}
@media(max-width:680px){.faq{grid-template-columns:1fr;gap:20px}
}

.packages{background:#0d1712}
.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:55px}
.package-grid article{position:relative;border:1px solid #66502c;background:#101b15;padding:42px 34px;display:flex;flex-direction:column}
.package-grid article.featured{border-color:#d19a43;box-shadow:0 18px 55px rgba(0,0,0,.3);transform:translateY(-10px)}
.popular{position:absolute;top:0;right:0;background:#b56a3d;color:#fff;padding:8px 13px;text-transform:uppercase;letter-spacing:.12em;font-size:9px}
.package-name{color:#d7a449;text-transform:uppercase;letter-spacing:.16em;font-size:11px}
.package-grid h3{font:500 32px/1.1 "Cormorant Garamond",serif;margin:14px 0 20px}
.package-grid article>p:not(.package-name){color:#b9b1a6;line-height:1.7;font-size:13px}
.package-grid ul{padding-left:18px;color:#d8d0c5;font-size:12px;line-height:2;margin-bottom:28px}
.package-grid a{margin-top:auto;color:#e2b561;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700}
.package-note{text-align:center;color:#9f978b;font-size:12px;margin:34px auto 0}
@media(max-width:850px){.package-grid{grid-template-columns:1fr}
.package-grid article.featured{transform:none}
}

/* AZ Porch and Pumpkin luxury brand system */
:root{--ink:#0b0a0b;--forest:#151314;--cream:#f3eee7;--copper:#cf8b55;--gold:#dda765;--muted:#bdb4aa}
.announcement{background:#0d0c0d;border-bottom-color:#6e4a30;color:#ded2c6}
.announcement span{border-left-color:#bd7f51}
.header{height:230px;top:53px;padding:0 3.5vw;background:linear-gradient(180deg,rgba(8,7,8,.82),rgba(8,7,8,0))}
.brand{gap:0;letter-spacing:0}
.brand img{display:block;width:520px;height:auto;max-height:220px;object-fit:contain;object-position:left center;filter:drop-shadow(0 4px 14px rgba(0,0,0,.65))}
.footer-brand img{width:350px;height:auto;max-height:none}
.nav-cta{background:rgba(11,10,11,.36)}
.hero-shade{background:linear-gradient(90deg,rgba(8,7,8,.99) 0%,rgba(8,7,8,.87) 35%,rgba(8,7,8,.3) 66%,rgba(8,7,8,.1))}
.hero-copy{padding-top:245px}
.button{border-color:#e1ad76;background:linear-gradient(110deg,#a75e38,#d3945f);box-shadow:0 9px 28px rgba(0,0,0,.18)}
.trust{border-color:#765036;background:#121011}
.services{background:#151314}
.process{background:#0b0a0b}
.reserve{background:linear-gradient(110deg,#ebe1d3 0 50%,#171415 50%)}
.packages{background:#121011}
.package-grid article{border-color:#735039;background:#171415}
@media(max-width:1280px){nav{gap:16px}nav a{font-size:11px}.brand img{width:430px;max-height:205px}}
@media(max-width:980px){.header{height:auto;top:53px;padding-top:8px}.brand img{width:355px;max-height:170px}.menu{background:rgba(11,10,11,.82);font-size:14px;font-weight:700;padding:14px 18px}.header nav{top:175px;background:#121011}.header nav a{font-size:15px;padding:8px}}
@media(max-width:680px){.brand img{width:295px;max-height:145px}.footer-brand img{width:280px;max-height:none}.hero-copy{padding-top:205px}.reserve{background:linear-gradient(#ebe1d3 0 43%,#171415 43%)}}
@media(max-width:390px){.brand img{width:260px;max-height:132px}.menu{padding:12px 14px}.hero-copy{padding-top:195px}}

/* Compact header: large readable brand without covering the hero */
.header{
  position:relative;
  top:auto;
  height:92px;
  padding:0 5vw;
  background:#0b0a0b;
  border-bottom:1px solid rgba(221,167,101,.38)
}
.brand{gap:13px;min-width:0}
.brand img.brand-mark{width:72px;height:72px;max-height:none;object-fit:contain;filter:none}
.brand-wordmark{display:flex;flex-direction:column;gap:4px;white-space:nowrap}
.brand-wordmark strong{font:600 clamp(25px,2vw,32px)/1 "Cormorant Garamond",serif;color:#e7c3a2;letter-spacing:.015em}
.brand-wordmark small{font:600 8px/1 Montserrat,sans-serif;color:#f0e9e2;text-transform:uppercase;letter-spacing:.34em}
.hero-copy{padding-top:20px}
nav{gap:25px}
nav a{font-size:12px}
.nav-cta{padding:15px 18px}

@media(max-width:1180px){
  .header{height:88px;padding-left:3vw;padding-right:3vw}
  .brand img.brand-mark{width:66px;height:66px}
  .brand-wordmark strong{font-size:26px}
  .brand-wordmark small{font-size:7px;letter-spacing:.28em}
  nav{gap:16px}
  nav a{font-size:10px}
  .nav-cta{padding:13px 15px}
}
@media(max-width:980px){
  .header{top:auto;height:86px;padding-top:0}
  .brand img.brand-mark{width:64px;height:64px}
  .brand-wordmark strong{font-size:26px}
  .brand-wordmark small{font-size:7px}
  .header nav{top:86px;left:0;right:0}
  .hero-copy{padding-top:25px}
}
@media(max-width:680px){
  .announcement{padding:11px 14px;font-size:13px;line-height:1.35}
  .header{height:76px;padding:0 16px}
  .brand{gap:9px}
  .brand img.brand-mark{width:53px;height:53px}
  .brand-wordmark strong{font-size:21px}
  .brand-wordmark small{font-size:6px;letter-spacing:.23em}
  .menu{font-size:11px;padding:11px 12px}
  .header nav{top:76px}
  .hero-copy{padding-top:25px}
}
@media(max-width:390px){
  .brand img.brand-mark{width:46px;height:46px}
  .brand-wordmark strong{font-size:19px}
  .brand-wordmark small{display:none}
}
