/* Shared visual polish for every PHP page */
:root{--shadow:0 16px 44px rgba(37,29,29,.08);--shadow-hover:0 22px 54px rgba(37,29,29,.14)}
body{font-size:15px;line-height:1.65}
.wrap{max-width:1160px}
.hero{padding:56px 0 64px;background:radial-gradient(circle at 92% 5%,rgba(183,139,61,.10),transparent 28%),var(--cream)}
.hero-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:52px}
.hero h1{font-size:clamp(42px,4.5vw,60px);line-height:1.04;letter-spacing:-.025em;margin:10px 0 16px}
.hero p,.page-hero p,.lead{font-size:16px;line-height:1.7}
.hero img.hero-storefront{box-shadow:14px 14px 0 var(--sand),var(--shadow)}
.eyebrow{font-size:11px;letter-spacing:.18em}
.actions{margin-top:24px}
.btn,.pill{font-size:13px;padding:10px 18px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(81,22,42,.15)}
.section{padding:64px 0}
.section-head{margin-bottom:28px}
.section h2{font-size:clamp(31px,3.2vw,42px);line-height:1.12;letter-spacing:-.015em}
.page-hero{position:relative;isolation:isolate;overflow:hidden;padding:54px 0 58px;background:linear-gradient(120deg,#f6eddf 0%,#fffdf8 62%,#f3e5dc 100%);border-bottom:1px solid var(--line)}
.page-hero:after{content:"";position:absolute;z-index:-1;width:320px;height:320px;border:1px solid rgba(183,139,61,.25);border-radius:50%;right:-70px;top:-170px;box-shadow:0 0 0 34px rgba(183,139,61,.05),0 0 0 68px rgba(114,36,59,.03)}
.page-hero h1{font-size:clamp(38px,4.5vw,54px);line-height:1.06;margin:8px 0 14px;max-width:760px}
.page-hero p{max-width:680px;margin:0}
.grid{gap:20px}
.card{border-radius:12px;border-color:#eadfd3;box-shadow:0 5px 18px rgba(37,29,29,.045);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover);border-color:#d9c3ac}
.card-body{padding:16px 17px 18px}
.card h3{font-size:21px;line-height:1.2;margin-bottom:6px}
.card p{font-size:13px;line-height:1.55}
.text-link{font-size:12px;margin-top:10px}
.split{gap:48px}
.feature-img{border-radius:12px;box-shadow:12px 12px 0 #eadfce,var(--shadow)}
.check-grid{gap:16px}
.check{position:relative;padding:22px;border-radius:12px;box-shadow:0 6px 20px rgba(37,29,29,.04)}
.check:before{content:"";display:block;width:34px;height:3px;margin-bottom:16px;background:linear-gradient(90deg,var(--wine),var(--gold));border-radius:99px}
.check b{font-size:20px}
.check p{font-size:13px;color:var(--muted);margin-bottom:0}
.prose{max-width:760px;font-size:16px}
.prose h2{font-size:30px;line-height:1.15;margin:32px 0 10px}
.gallery{gap:20px}
.gallery img{border-radius:12px;box-shadow:0 8px 24px rgba(37,29,29,.08);transition:transform .25s ease,box-shadow .25s ease}
.gallery img:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.contact-grid{gap:20px}
.contact-card{padding:24px;border-radius:12px;border-color:#eadfd3;box-shadow:0 8px 26px rgba(37,29,29,.05)}
.contact-card h3{font-size:25px;line-height:1.15;margin:0 0 10px}
.contact-card p{font-size:14px;color:var(--muted)}
.map-frame{box-shadow:var(--shadow)}
.seo-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:48px;align-items:start}
.seo-section h2{font-size:clamp(31px,3.2vw,42px);line-height:1.12;margin:7px 0 16px}
.seo-section p{color:var(--muted);font-size:15px}
.seo-section p a{color:var(--wine);font-weight:600;text-decoration:underline;text-decoration-color:rgba(114,36,59,.25);text-underline-offset:3px}
.seo-panel{padding:26px;border:1px solid #dbcbb9;border-radius:14px;background:#fff;box-shadow:var(--shadow)}
.seo-panel h3{font:600 25px/1.15 'Cormorant Garamond';margin:0 0 14px}
.seo-panel ul{list-style:none;padding:0;margin:0 0 20px}
.seo-panel li{border-bottom:1px solid var(--line)}
.seo-panel li a{display:block;padding:9px 0;color:var(--muted);font-size:13px}
.seo-panel li a:hover{color:var(--wine)}
.faq{max-width:850px;border-top:1px solid var(--line)}
.faq details{padding:0}
.faq summary{position:relative;padding:17px 42px 17px 0;font-size:19px;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:5px;top:14px;color:var(--gold);font:500 24px/1 Inter,sans-serif}
.faq details[open] summary:after{content:"−"}
.faq details p{margin:0;padding:0 44px 17px 0;font-size:14px;line-height:1.7}
.cta{padding:48px 20px;background:linear-gradient(125deg,#641b33,var(--wine),#4b1728)}
.cta h2{font-size:clamp(31px,3.5vw,40px);line-height:1.1}
.cta p{font-size:14px;margin:10px 0 0}
.footer{padding-top:46px}
.footer h4{font-size:18px}
.footer p,.footer li{font-size:12px;line-height:1.65}
@media(max-width:960px){.hero-grid{grid-template-columns:1fr;gap:34px}.hero{padding:44px 0 54px}.hero h1{max-width:680px}.grid{gap:16px}.section{padding:54px 0}.page-hero{padding:44px 0 48px}.seo-grid{grid-template-columns:1fr;gap:26px}}
@media(max-width:600px){body{font-size:14px}.hero{padding:38px 0 46px}.hero h1{font-size:38px;line-height:1.06}.hero p,.page-hero p,.lead{font-size:14px}.page-hero{padding:38px 0 40px}.page-hero h1{font-size:36px}.section{padding:46px 0}.section h2{font-size:31px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.card-body{padding:12px}.card h3{font-size:18px}.card p{font-size:12px}.text-link{font-size:11px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.contact-grid,.check-grid{grid-template-columns:1fr}.contact-card{padding:20px}.cta{padding:42px 18px 54px}.footer{padding-bottom:110px}}
.mobile-bar a{flex-direction:column;gap:3px;color:#4f2432;line-height:1.1}
.mobile-bar svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.mobile-bar a:nth-child(2){color:#128c5b}
.mobile-bar span{display:block}
@media(max-width:390px){.grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}}
