/* ===== Pavishgifts Design System =====
   Palette: Ink Plum #3B1730 / Marigold #E0A63E / Blossom #E8879C / Forest #4B6B4F / Paper #FFFCF7
   Display: Fraunces (warm, gift-tag serif) — Body: Work Sans
   Signature: hanging gift-tag cards + scalloped "wrapping paper" section dividers
*/
:root{
  --ink:#3B1730;
  --ink-soft:#6B4A63;
  --gold:#E0A63E;
  --gold-dark:#B9822A;
  --blossom:#E8879C;
  --forest:#4B6B4F;
  --paper:#FFFCF7;
  --paper-dim:#F6EFE6;
  --line:#E9DDCE;
  --radius:14px;
  --shadow:0 12px 30px -14px rgba(59,23,48,.35);
}
.pg-nav .current-menu-item > a,
.pg-nav .current_page_item > a {
    color: var(--gold);
    border-bottom: 2px solid var(--gold);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body.pg{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Work Sans',-apple-system,Segoe UI,sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.pg h1,.pg h2,.pg h3,.pg .display{
  font-family:'Fraunces',Georgia,serif;
  font-weight:600;
  letter-spacing:-0.01em;
  color:var(--ink);
  margin:0 0 .4em;
}
.pg h1{font-size:clamp(2.4rem,5vw,4rem);font-weight:600;line-height:1.05;}
.pg h1 em, .pg h2 em{font-style:italic;font-weight:500;color:var(--gold-dark);}
.pg h2{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.15;}
.pg h3{font-size:1.2rem;font-weight:600;}
.pg p{margin:0 0 1em;color:var(--ink-soft);}
.pg a{color:inherit;}
.pg .eyebrow{
  display:inline-flex;align-items:center;gap:.5em;
  font-family:'Work Sans',sans-serif;font-weight:600;font-size:.78rem;
  letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dark);
  margin-bottom:.9em;
}
.pg .eyebrow::before{content:"";width:18px;height:2px;background:var(--gold);display:inline-block;}
.pg .wrap{max-width:1280px;margin:0 auto;padding:0 24px;}
.pg .btn{
  display:inline-flex;align-items:center;gap:.5em;transition:.25s ease;
  font-family:'Work Sans',sans-serif;font-weight:600;font-size:.95rem;
  padding:.85em 1.6em;border-radius:100px;text-decoration:none;
  border:1.5px solid transparent;transition:transform .18s ease, box-shadow .18s ease;
  cursor:pointer;
}
.footer-logo{
    display:inline-block;
    margin-bottom:14px;
}

.footer-desc{
    color:#D9C6D2;
    font-size:.9rem;
}

.footer-menu,
.footer-contact{
    list-style:none;
    margin:0;
    padding:0;
}

.footer-menu li,
.footer-contact li{
    margin-bottom:10px;
}

.footer-menu a,
.footer-contact a{
    color:#D9C6D2;
    text-decoration:none;
    transition:.25s ease;
}

.footer-menu a:hover,
.footer-contact a:hover{
    color:var(--gold);
}

.bottom a{
    color:#B79EAF;
    text-decoration:none;
}

.bottom a:hover{
    color:var(--gold);
}

.pg .btn:hover{transform:translateY(-3px);}
.pg .btn-gold{background:var(--gold);color:var(--ink);box-shadow:0 8px 20px -8px rgba(224,166,62,.6);}
.pg .btn-gold:hover{box-shadow:0 12px 24px -8px rgba(224,166,62,.8);}
.pg .btn-outline{border-color:var(--ink);color:var(--ink);background:transparent;}
.pg .btn-outline:hover{background:var(--ink);color:var(--paper);}
.pg .btn-ghost{border-color:rgba(255,252,247,.4);color:var(--paper);}
.pg .btn-ghost:hover{background:rgba(255,252,247,.12);}

/* ---------- Header ---------- */
/* ---------- Header ---------- */

.pg-header{
    position:sticky;
    top:0;
    z-index:999;
    background:rgba(255,252,247,.96);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
    box-shadow:0 2px 12px rgba(0,0,0,.05);
}

.pg-header .row{
    max-width:1200px;
    margin:auto;
    padding:16px 24px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
}

.pg-logo{
    font-family:'Fraunces',serif;
    font-style:italic;
    font-size:2rem;
    font-weight:600;
    color:var(--ink);
    text-decoration:none;
    white-space:nowrap;
}

.pg-logo span{
    color:var(--gold-dark);
    font-style:normal;
}

.pg-nav{
    display:flex;
    align-items:center;
    justify-content:center;

    flex:1;

    gap:26px;

    list-style:none;
    margin:0;
    padding:0;
}

.pg-nav li{
    margin:0;
    padding:0;
}

.pg-nav a{
    display:block;

    white-space:nowrap;

    text-decoration:none;
    color:var(--ink-soft);

    font-size:16px;
    font-weight:500;

    padding:8px 0;

    transition:.25s;
}

.pg-nav a:hover{
    color:var(--gold-dark);
    transform:translateY(-2px);
}

.pg-nav .current-menu-item>a,
.pg-nav .current_page_item>a{
    color:var(--gold-dark);
    border-bottom:2px solid var(--gold);
}

.pg-header-actions{
    display:flex;
    align-items:center;
    gap:15px;
}

.pg-burger{
    display:none;
}

@media(max-width:1024px){

    .pg-nav{

        display:none;

    }

    .pg-burger{

        display:block;

    }

}

/* ---------- Hero ---------- */
.pg-hero{padding:76px 0 60px;position:relative;overflow:hidden;}
.pg-hero .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;}
@media(max-width:860px){.pg-hero .grid{grid-template-columns:1fr;}}
.pg-hero p.lede{font-size:1.12rem;max-width:46ch;}
.pg-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:1.4em;}

/* Hanging gift-tag cluster (signature element) */
.tag-cluster{position:relative;height:340px;margin-top:-20px;}
.tag-card{
  position:absolute;width:190px;background:var(--paper);
  border:1px solid var(--line);border-radius:10px;
  box-shadow:var(--shadow);padding:18px 16px 16px;
  font-family:'Work Sans',sans-serif;
}
.tag-card::before{ /* punch hole */
  content:"";position:absolute;top:-9px;left:50%;transform:translateX(-50%);
  width:16px;height:16px;border-radius:50%;background:var(--paper);border:2px solid var(--ink-soft);
}
.tag-card::after{ /* string */
  content:"";position:absolute;top:-46px;left:50%;transform:translateX(-50%) rotate(var(--string-rot,0deg));
  width:2px;height:42px;background:var(--ink-soft);opacity:.5;
}
.tag-card .k{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark);font-weight:700;margin-bottom:6px;}
.tag-card .v{font-family:'Fraunces',serif;font-size:1.1rem;font-weight:600;}
.tag-1{top:0;left:10%;transform:rotate(-6deg);--string-rot:-6deg;}
.tag-2{top:70px;left:42%;transform:rotate(4deg);--string-rot:4deg;z-index:2;}
.tag-3{top:150px;left:8%;transform:rotate(-2deg);--string-rot:-2deg;}

/* ---------- Scalloped divider (signature) ---------- */
.scallop{display:block;width:100%;height:26px;line-height:0;}
.scallop-ink{background:var(--ink);}
.scallop-paper{background:var(--paper);}
.scallop svg{display:block;width:100%;height:100%;}

/* ---------- Sections ---------- */
.pg-section{padding:74px 0;}
.pg-section.dim{background:var(--paper-dim);}
.pg-section.ink{background:var(--ink);color:var(--paper);}
.pg-section.ink h2,.pg-section.ink h3{color:var(--paper);}
.pg-section.ink p{color:#D9C6D2;}
.section-head{max-width:640px;margin:0 auto 44px;text-align:center;}
.section-head.left{margin:0 0 44px;text-align:left;}

/* ---------- Cards / grids ---------- */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:32px;}
@media(max-width:860px){.grid-3,.grid-4,.grid-2{grid-template-columns:1fr;}}

.card{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  padding:28px 24px;transition:transform .2s ease, box-shadow .2s ease;
}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.card .icon{
  width:44px;height:44px;border-radius:10px;background:var(--gold);
  display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:16px;
}
.card.on-ink{background:rgba(255,252,247,.06);border-color:rgba(255,252,247,.14);}

.category-card{
  position:relative;border-radius:var(--radius);overflow:hidden;padding:26px 22px;min-height:180px;
  display:flex;flex-direction:column;justify-content:flex-end;color:var(--paper);
  background:linear-gradient(160deg,var(--ink),var(--ink-soft));
}
.category-card.gold{background:linear-gradient(160deg,var(--gold-dark),var(--gold));color:var(--ink);}
.category-card.blossom{background:linear-gradient(160deg,#B85C71,var(--blossom));color:var(--ink);}
.category-card.forest{background:linear-gradient(160deg,#33473A,var(--forest));}
.category-card h3{color:inherit;margin-bottom:.2em;}
.category-card a{text-decoration:none;font-weight:600;font-size:.85rem;display:inline-flex;align-items:center;gap:6px;margin-top:10px;}

/* ---------- Stats / steps ---------- */
.steps{display:flex;gap:26px;counter-reset:step;}
.step{flex:1;position:relative;}
.step .num{font-family:'Fraunces',serif;font-size:2.1rem;color:var(--gold);font-weight:600;display:block;margin-bottom:.2em;}
@media(max-width:860px){.steps{flex-direction:column;}}

.stat-row{display:flex;gap:48px;flex-wrap:wrap;}
.stat b{font-family:'Fraunces',serif;font-size:2.2rem;display:block;color:var(--ink);}
.pg-section.ink .stat b{color:var(--paper);}
.stat span{font-size:.85rem;color:var(--ink-soft);}
.pg-section.ink .stat span{color:#D9C6D2;}

/* ---------- Testimonial ---------- */
.quote{font-family:'Fraunces',serif;font-style:italic;font-size:1.3rem;line-height:1.5;color:var(--ink);}

/* ---------- Forms ---------- */
.pg-form{display:grid;gap:16px;max-width:560px;}
.pg-form label{display:block;font-size:.85rem;font-weight:600;margin-bottom:6px;}
.pg-form input,.pg-form select,.pg-form textarea{
  width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:8px;
  font-family:'Work Sans',sans-serif;font-size:.95rem;background:var(--paper);color:var(--ink);
}
.pg-form input:focus,.pg-form select:focus,.pg-form textarea:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold);}
.pg-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:600px){.pg-form-row{grid-template-columns:1fr;}}

/* ---------- FAQ accordion ---------- */
.faq-item{border-bottom:1px solid var(--line);}
.faq-item summary{
  cursor:pointer;list-style:none;padding:20px 0;font-family:'Fraunces',serif;font-weight:600;font-size:1.05rem;
  display:flex;justify-content:space-between;align-items:center;
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";font-size:1.4rem;color:var(--gold-dark);font-family:'Work Sans',sans-serif;}
.faq-item[open] summary::after{content:"–";}
.faq-item p{padding-bottom:18px;}

/* ---------- Breadcrumb / page header ---------- */
.page-hero{padding:56px 0 40px;text-align:center;}
.page-hero .wrap{max-width:760px;}
.crumb{font-size:.82rem;color:var(--ink-soft);margin-bottom:1em;}
.crumb a{color:var(--gold-dark);text-decoration:none;}

/* ---------- Filter pills (category pages) ---------- */
.pill-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:8px;}
.pill{border:1.5px solid var(--line);padding:.5em 1.1em;border-radius:100px;font-size:.85rem;font-weight:600;background:var(--paper);}
.pill.active{background:var(--ink);color:var(--paper);border-color:var(--ink);}

/* ---------- Footer ---------- */
.pg-footer{background:var(--ink);color:#E9DDCE;padding:64px 0 28px;}
.pg-footer .grid-4{gap:36px;}
.pg-footer h4{font-family:'Fraunces',serif;color:var(--paper);font-size:1rem;margin-bottom:16px;}
.pg-footer ul{list-style:none;margin:0;padding:0;}
.pg-footer li{margin-bottom:10px;}
.pg-footer a{text-decoration:none;color:#D9C6D2;font-size:.92rem;}
.pg-footer a:hover{color:var(--gold);}
.pg-footer .pg-logo{color:var(--paper);}
.pg-footer .bottom{
  max-width:1140px;margin:48px auto 0;padding:24px 24px 0;border-top:1px solid rgba(255,252,247,.12);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.8rem;color:#B79EAF;
}

/* ---------- Sticky mobile CTA (helps conversion) ---------- */
.mobile-cta{display:none;}
@media(max-width:640px){
  .mobile-cta{
    display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;
    background:var(--paper);border-top:1px solid var(--line);padding:12px 16px;gap:10px;
  }
  .mobile-cta .btn{flex:1;justify-content:center;}
  body.pg{padding-bottom:70px;}
}

/* ---------- Utility ---------- */
.center{text-align:center;}
.mt-0{margin-top:0;}
.small{font-size:.85rem;color:var(--ink-soft);}
.badge{display:inline-block;background:var(--paper-dim);border:1px solid var(--line);border-radius:100px;padding:.35em .9em;font-size:.78rem;font-weight:600;color:var(--ink-soft);margin:0 6px 6px 0;}