/* Site-wide inner pages — premium natural look. Loaded after style.css / mobile-fixes.css */
:root{--pp-pine:#1f4a2a;--pp-pine2:#2d6a3d;--pp-ivory:#f7f2e7;--pp-cream:#fcfaf4;--pp-sage:#dde7d2;--pp-terra:#b9623e;--pp-line:rgba(31,74,42,.14)}

/* ── Page header banner ── */
body .page-hero{position:relative;overflow:hidden;background:radial-gradient(120% 140% at 85% 0%,#2f6b3d 0%,#1f4a2a 55%,#16351f 100%);border:0;color:#fff;text-align:center;padding:52px 1rem 70px}
body .page-hero::before{display:none}
body .page-hero::after{content:"";position:absolute;inset:auto 0 0 0;height:28px;background:var(--pp-cream,#fcfaf4);border-radius:28px 28px 0 0}
body .page-hero .container{max-width:860px;margin:0 auto}
body .page-hero .breadcrumb{justify-content:center;color:rgba(255,255,255,.8);font-size:.72rem;margin-bottom:.9rem}
body .page-hero .breadcrumb a{color:#fff;opacity:.8}
body .page-hero .page-eyebrow{display:block;color:#f2d98a;font-size:.74rem;letter-spacing:.16em;margin-bottom:.8rem}
body .page-hero h1{font-family:'Playfair Display',Georgia,serif;font-style:normal;font-weight:600;font-size:clamp(2rem,5vw,3rem);line-height:1.15;color:#fff;margin:.2rem 0 .6rem;letter-spacing:-.01em}
body .page-hero p{color:rgba(255,255,255,.85);font-size:1.02rem;margin:0 auto;max-width:560px}
body .page-hero .page-eyebrow + h1{margin-top:0}
/* pages whose content area follows the banner */
body .page-hero + .container{padding-top:.5rem}

/* ── Buttons: one consistent pine style ── */
body .btn-gold,body .btn-primary{background:var(--pp-pine);color:#fff;border:1.5px solid var(--pp-pine);box-shadow:0 8px 20px -10px rgba(31,74,42,.6);letter-spacing:.02em;border-radius:99px}
body .btn-gold:hover,body .btn-primary:hover{background:var(--pp-pine2);border-color:var(--pp-pine2);color:#fff;transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(31,74,42,.7)}
body .btn-outline{border-color:var(--pp-pine);color:var(--pp-pine);border-radius:99px}
body .btn-outline:hover{background:var(--pp-pine);color:#fff}

/* ── Forms ── */
body .form-control{border:1.5px solid var(--pp-line);border-radius:14px;background:#fff;transition:border-color .2s,box-shadow .2s}
body .form-control:focus{border-color:var(--pp-pine2);box-shadow:0 0 0 4px rgba(45,106,61,.12);outline:0}
body .form-group label{color:var(--pp-pine);font-weight:600}

/* ── Text pages (shipping, returns, privacy, terms, disclaimer) ── */
body .prose{max-width:780px;margin:0 auto;background:#fff;border:1px solid var(--pp-line);border-radius:22px;padding:2.4rem 2.6rem;box-shadow:0 18px 40px -28px rgba(31,74,42,.35)}
body .prose h2{font-family:'Playfair Display',Georgia,serif;font-weight:600;font-size:1.35rem;color:var(--pp-pine);margin:2rem 0 .6rem;padding-top:1.4rem;border-top:1px solid var(--pp-line)}
body .prose h2:first-child{margin-top:0;padding-top:0;border-top:0}
body .prose h3{color:var(--pp-pine);font-family:'Playfair Display',Georgia,serif}
body .prose p,body .prose li{color:#4d5a4d;line-height:1.8;font-size:.98rem}
body .prose a{color:var(--pp-terra)}
@media (max-width:640px){body .prose{padding:1.6rem 1.25rem;border-radius:18px}}

/* ── FAQ ── */
body .faq-item{border:1px solid var(--pp-line)!important;border-radius:16px!important;background:#fff;box-shadow:0 10px 24px -22px rgba(31,74,42,.5);transition:box-shadow .25s,border-color .25s}
body .faq-item:hover{border-color:rgba(31,74,42,.3)!important;box-shadow:0 16px 30px -20px rgba(31,74,42,.45)}
body .faq-item button{border:0!important;outline:0;background:#fff!important;font-family:'Inter',sans-serif;font-weight:600!important;font-size:.98rem!important;color:var(--pp-pine);cursor:pointer;gap:1rem;min-height:56px}
body .faq-item button i{width:30px;height:30px;border-radius:50%;background:var(--pp-sage);display:grid;place-items:center;font-size:.72rem;color:var(--pp-pine)!important}
body .faq-item button:focus-visible{box-shadow:inset 0 0 0 2px var(--pp-pine2)}

/* ── Login / register ── */
body .login-page{background:radial-gradient(100% 90% at 80% 0%,#e3ecd9 0%,#f7f2e7 55%,#fcfaf4 100%)}
body .login-box{border:1px solid var(--pp-line);box-shadow:0 30px 60px -34px rgba(31,74,42,.5);border-radius:26px}
body .login-tab.active{color:var(--pp-pine)}
body .login-box h2,body .login-box h1{font-family:'Playfair Display',Georgia,serif;color:var(--pp-pine)}

/* ── Empty states, cards, blog ── */
body .empty-state i{color:var(--pp-pine2)}
body .product-card{border-radius:20px;border-color:var(--pp-line)}
body .pagination a.current{background:var(--pp-pine);border-color:var(--pp-pine);color:#fff}

body .page-hero .breadcrumb,body .page-hero .breadcrumb span{color:rgba(255,255,255,.9)!important}
body .page-hero .breadcrumb a{opacity:.85}

/* ── Other hero blocks with their own markup (contact, bulk inquiry, story) ── */
body .contact-hero,body .intl-hero,body .story-hero{position:relative;overflow:hidden;background:radial-gradient(120% 140% at 85% 0%,#2f6b3d 0%,#1f4a2a 55%,#16351f 100%);border:0;text-align:center;padding:52px 1rem 70px}
body .story-hero{padding:64px 0 84px}
body .story-hero::before{background:none}
body .contact-hero::after,body .intl-hero::after,body .story-hero::after{content:"";position:absolute;inset:auto 0 0 0;height:28px;background:#fcfaf4;border-radius:28px 28px 0 0}
body .contact-hero h1,body .intl-hero h1,body .story-hero h1{font-family:'Playfair Display',Georgia,serif;font-style:normal;font-weight:600;color:#fff;letter-spacing:-.01em;line-height:1.15}
body .story-hero h1 em{color:#f2d98a;font-style:italic}
body .contact-hero p,body .intl-hero p,body .story-hero p{color:rgba(255,255,255,.85);margin-left:auto;margin-right:auto}
body .contact-hero .page-eyebrow,body .contact-hero .breadcrumb,body .contact-hero .breadcrumb a,body .contact-hero .breadcrumb span,body .intl-hero .eyebrow{color:#f2d98a!important;display:block;text-align:center;justify-content:center}
body .contact-hero .container,body .intl-hero-inner{max-width:860px;margin:0 auto}
body .story-hero-bird{mix-blend-mode:normal!important;background:#fff;border-radius:50%;padding:12px;box-shadow:0 12px 30px -10px rgba(0,0,0,.45);height:96px!important;width:96px!important;object-fit:contain;animation:none!important}

/* contact + intl cards */
body .contact-form-card,body .intl-card{border:1px solid var(--pp-line);border-radius:22px;box-shadow:0 18px 40px -28px rgba(31,74,42,.35)}
body .contact-icon{background:var(--pp-sage);border-color:transparent;color:var(--pp-pine);border-radius:50%}
body .contact-icon-text strong{color:var(--pp-pine)}

/* ── Share your story form ── */
body .story-form-wrap{max-width:680px;margin:0 auto;background:#fff;border:1px solid var(--pp-line);border-radius:26px;padding:2.6rem 2.4rem;box-shadow:0 24px 50px -34px rgba(31,74,42,.5)}
.sf-head{text-align:center;margin-bottom:2rem}
.sf-ico{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--pp-sage);color:var(--pp-pine);font-size:1.15rem;margin-bottom:14px}
.sf-head h2{font-family:'Playfair Display',Georgia,serif;font-style:normal;font-weight:600;font-size:1.7rem;color:var(--pp-pine);margin:0 0 8px}
.sf-head p{margin:0 auto;max-width:440px;color:#5a6659;font-size:.95rem;line-height:1.6}
.story-form-wrap .form-group label{display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0;font-size:.9rem;font-weight:600;color:var(--pp-pine);margin-bottom:8px}
.story-form-wrap .form-control{min-height:50px;border-radius:14px;font-size:1rem}
.story-form-wrap textarea.form-control{min-height:150px;line-height:1.6;padding-top:14px}
.story-form-wrap select.form-control{appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%231f4a2a' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M1 1l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 16px center;padding-right:42px}
.sf-opt{background:var(--pp-ivory);color:#5a6659;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:99px}
.sf-vlabel i{color:var(--pp-pine2)}
body .upload-zone{border:2px dashed rgba(31,74,42,.28);border-radius:18px;background:#fcfaf4;padding:2rem 1.25rem}
body .upload-zone:hover,body .upload-zone.has-file{border-color:var(--pp-pine2);background:#f1f6ea}
body .upload-zone .upload-icon{color:var(--pp-pine2)}
.sf-note{font-size:.8rem;color:#5a6659;margin:.7rem 0 0;line-height:1.6}
body .story-form-wrap .btn-full{margin-top:6px;min-height:54px}
.sf-foot{text-align:center;color:#5a6659;font-size:.82rem;margin:16px 0 0}
.sf-foot i{color:var(--pp-pine2);margin-right:6px}
@media (max-width:640px){body .story-form-wrap{padding:1.7rem 1.2rem;border-radius:20px}}
