/* Go Goddess Organizing theme. Layout: champagne editorial pages, photo slots carry the color, one berry accent for every next step */
:root{
  /* Go Goddess refined feminine palette: deep plum, rose clay, champagne, muted brass, soft ink */
  --bg:#F6EFE7; --surface:#FFFCF8; --ink:#3B3440; --muted:#6C6370; --line:#E7DACB;
  --berry:#4E2A4F; --berry-ink:#FFFFFF; --gold:#8E6E3E; --brass:#B08D57; --rose:#C99B90; --blush:#F1E0DA; --photo:#ECDFD2; --plate:#FFFFFF; --plate-night:#141A26;
  --display:"Fraunces", Georgia, "Times New Roman", serif;
  --body:"DM Sans", "Helvetica Neue", Arial, sans-serif;
  --script:"Allura", "Brush Script MT", cursive;
  color-scheme:light;
}

*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font:400 17px/1.65 var(--body)}
a{color:var(--berry)}
:focus-visible{outline:3px solid var(--brass);outline-offset:3px}
.wrap{max-width:1080px;margin:0 auto;padding-inline:20px}
.narrow{max-width:680px}
h1,h2,h3{font-family:var(--display);line-height:1.12;text-wrap:balance;margin:0}
h1{font-size:clamp(2.3rem,6vw,4.2rem);font-weight:800;letter-spacing:-.01em}
h2{font-size:clamp(1.7rem,4vw,2.6rem);font-weight:600}
h3{font-size:1.3rem;font-weight:600}
p{margin:0}
.eyebrow{font:700 .78rem/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.script{font-family:var(--script);font-size:2.4rem;color:var(--berry);line-height:1}
.stack{display:flex;flex-direction:column;gap:18px}
.section{padding-block:72px;border-top:1px solid var(--line)}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-block;padding:14px 24px;border-radius:999px;font:700 .9rem/1 var(--body);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border:2px solid var(--berry);cursor:pointer}
.btn.primary{background:var(--berry);color:var(--berry-ink)}
.btn.ghost{background:transparent;color:var(--berry)}
.btn:hover{filter:brightness(1.08)}
.big{font-family:var(--display);font-size:1.45rem;line-height:1.35}

/* top bar */
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:var(--bg);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:12px;flex-wrap:wrap}
.logo{font-family:var(--display);font-weight:800;font-size:1.25rem;text-decoration:none;color:var(--ink)}
.logo span{font-family:var(--script);font-weight:400;color:var(--berry);font-size:1.6rem;margin-left:4px}
nav.tabs{display:flex;gap:4px;flex-wrap:wrap}
nav.tabs button{background:none;border:0;font:500 .92rem var(--body);color:var(--muted);padding:8px 12px;border-radius:999px;cursor:pointer}
nav.tabs button[aria-current="page"]{background:var(--blush);color:var(--ink)}
.note{background:var(--blush);color:var(--ink);font-size:.85rem;text-align:center;padding:8px 16px}

/* photo slots */
.photo{background:var(--photo);border:2px dashed var(--line);border-radius:18px;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;color:var(--muted);font-size:.9rem;min-height:260px;max-width:100%}
.photo b{display:block;color:var(--ink);font-family:var(--display);font-size:1.05rem;margin-bottom:4px}

.hero{padding-block:56px 72px;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.hero > *{min-width:0}
.tagline{font-weight:700;color:var(--ink)}
.strip{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;padding-block:22px;border-top:1px solid var(--line);color:var(--muted);font-size:.95rem}
.strip em{font-family:var(--display);font-size:1.3rem;color:var(--ink)}

.qs{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.qs li{font-family:var(--display);font-size:1.25rem;padding-left:28px;position:relative}
.qs li::before{content:"?";position:absolute;left:0;color:var(--rose);font-weight:800}
.permission{border:2px solid var(--brass);border-radius:18px;padding:28px;text-align:center}
.permission .script{font-size:2rem}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.grid3 > *,.grid2 > *{min-width:0}
.door{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:14px}
.door .btn{margin-top:auto;align-self:flex-start}
.door small{color:var(--muted)}

.ba{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.ba .photo{min-height:160px;border-radius:12px}
.ba-card{display:flex;flex-direction:column;gap:10px}
.ba-card p{font-family:var(--display);font-style:italic}

.quote{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:12px}
.quote p{font-family:var(--display);font-size:1.08rem}
.quote cite{font-style:normal;font-weight:700;font-size:.9rem}
.quote cite span{color:var(--muted);font-weight:400}
.placeholder p{color:var(--muted);font-style:italic}

/* pricing */
.paths{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.path{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:30px;display:flex;flex-direction:column;gap:16px}
.path.team{border:2px solid var(--berry)}
.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:.95rem}
.facts dt{color:var(--muted)}
.facts dd{margin:0;font-weight:500}
.fits{margin:0;padding-left:20px;display:grid;gap:6px}
.pk{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.pk3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pkg{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:10px;position:relative;min-width:0}
.pkg.pop{border:2px solid var(--berry)}
.badge{position:absolute;top:-12px;left:20px;background:var(--berry);color:var(--berry-ink);font:700 .7rem/1 var(--body);letter-spacing:.12em;text-transform:uppercase;padding:6px 10px;border-radius:999px}
.price{font-family:var(--display);font-size:2.1rem;font-weight:800;font-variant-numeric:tabular-nums}
.meta{font:700 .75rem var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.addon{margin-top:auto;padding-top:10px;border-top:1px dashed var(--brass);font-size:.88rem;color:var(--muted);font-variant-numeric:tabular-nums}
.includes{background:var(--blush);border-radius:18px;padding:26px}
.includes ul{margin:10px 0 0;padding-left:20px;display:grid;gap:6px}
.steps{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.steps li{counter-increment:s;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px}
.steps li::before{content:counter(s);font-family:var(--display);font-size:2rem;font-weight:800;color:var(--berry);display:block}
details{border-bottom:1px solid var(--line);padding-block:14px}
summary{cursor:pointer;font-family:var(--display);font-size:1.15rem;font-weight:600}
details p{margin-top:8px;color:var(--muted)}

table.opts{width:100%;border-collapse:collapse;font-size:.95rem}
table.opts th,table.opts td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}
table.opts th{font:700 .75rem var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.tw{overflow-x:auto}
.uno{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.uno div{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px}
.uno strong{font-family:var(--display);font-size:1.6rem;color:var(--berry);display:block}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips span,.chips button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:8px 14px;font:500 .88rem var(--body)}
.chips button{cursor:pointer}
.chips button[aria-pressed="true"]{background:var(--berry);color:var(--berry-ink);border-color:var(--berry)}

/* love notes video hero */
.video{position:relative;border-radius:22px;overflow:hidden;min-height:420px;background:var(--photo);display:flex;align-items:flex-end;justify-content:center;padding:24px}
.video .label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted);padding:40px}
.float{position:absolute;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 16px;max-width:240px;font-family:var(--display);font-size:.95rem;box-shadow:0 10px 30px rgba(60,30,40,.12);animation:bob 6s ease-in-out infinite}
.float:nth-child(2){top:8%;left:5%}
.float:nth-child(3){top:18%;right:5%;animation-delay:-2s}
.float:nth-child(4){bottom:10%;left:12%;animation-delay:-4s}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media (prefers-reduced-motion:reduce){.float{animation:none}}

/* photos */
.shot{display:block;width:100%;height:auto;object-fit:cover;border-radius:22px;max-width:100%}
.bafig{margin:0;display:flex;flex-direction:column;gap:8px;min-width:0}
.bafig img{width:100%;height:auto;border-radius:14px;display:block}
.bafig figcaption{font:700 .78rem var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.bagrid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.pkgimg{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:12px;display:block}
@media (max-width:560px){.bagrid{grid-template-columns:1fr}}

.duo{display:grid;grid-template-columns:2fr 1fr;gap:18px;align-items:stretch}
.duo .shot{height:100%;min-height:0}
@media (max-width:560px){.duo{grid-template-columns:1fr}}

.duo.flip{grid-template-columns:1.4fr 1fr}
.trio{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.trio .shot{aspect-ratio:2/3}
@media (max-width:560px){.duo.flip{grid-template-columns:1fr}}

.psst{background:var(--blush);border-radius:14px;padding:14px 18px}
.psst .script{font-size:1.6rem;margin-right:6px}

/* village */
.pros{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pro{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.logo-slot{height:84px;border:2px dashed var(--line);border-radius:12px;background:var(--photo);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:800;font-size:1.6rem;color:var(--muted)}
.logo-plate{height:120px;background:var(--plate);border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;justify-content:center;padding:12px;overflow:hidden}
.logo-plate.night{background:var(--plate-night)}
.logo-plate img{max-width:100%;max-height:100%;object-fit:contain}
.pro .meta{margin-top:4px}
.pro a{margin-top:auto;font-weight:700;text-decoration:none}
.pro a:hover{text-decoration:underline}
.members{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.member{border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:8px;background:var(--surface);min-width:0}
.member .logo-slot{height:70px;font-size:1.3rem}
.member .logo-plate{height:90px}
.proud{display:flex;flex-wrap:wrap;gap:6px 18px}
.proud a{color:var(--muted)}
@media (max-width:860px){.pros,.members{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.pros,.members{grid-template-columns:1fr}}

.legal h3{font-size:1.1rem;margin-top:18px}
.legal p{color:var(--ink);font-size:.98rem}
.legal mark{background:var(--blush);color:var(--ink);padding:0 4px;border-radius:4px}
footer{padding-block:48px;border-top:1px solid var(--line);color:var(--muted);font-size:.92rem}
footer .wrap{display:flex;flex-direction:column;gap:8px}

@media (max-width:860px){
  .hero,.grid2,.paths{grid-template-columns:1fr}
  .grid3,.pk,.pk3,.steps,.uno{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .grid3,.pk,.pk3,.steps,.uno{grid-template-columns:1fr}
  .video{min-height:auto;flex-direction:column;align-items:stretch;gap:12px;padding:16px}
  .video .label{position:static;padding:30px 10px}
  .float{position:static;max-width:none;animation:none}
  .section{padding-block:52px}
}

/* WordPress pages */
.top .wrap{flex-wrap:wrap}
nav.tabs a{font:500 .92rem var(--body);color:var(--muted);padding:8px 12px;border-radius:999px;text-decoration:none}
nav.tabs a[aria-current="page"]{background:var(--blush);color:var(--ink)}
.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font:600 .9rem var(--body);color:var(--ink);cursor:pointer}
.sticky-cta{display:none}
@media (max-width:860px){
  .menu-toggle{display:inline-block}
  nav.tabs{display:none;width:100%;flex-direction:column;padding-bottom:10px}
  nav.tabs.open{display:flex}
  .sticky-cta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;gap:8px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:var(--bg);border-top:1px solid var(--line)}
  .sticky-cta a{flex:1;text-align:center;padding:12px 8px}
  footer{padding-bottom:110px}
}
.entry{max-width:720px;margin:0 auto;padding-block:56px 72px}
.entry h1{margin-bottom:12px}
.entry .meta-line{color:var(--muted);font-size:.9rem;margin-bottom:24px}
.entry img{border-radius:14px;height:auto}
.entry p,.entry li{margin-bottom:1em}
.post-list{display:grid;gap:28px}
.post-card{border-bottom:1px solid var(--line);padding-bottom:24px}
.post-card h2{font-size:1.5rem}
.post-card a{text-decoration:none;color:var(--ink)}
.pagination{display:flex;gap:12px;margin-top:24px}
.screen-reader-text{position:absolute;left:-9999px}
