/* ============================================================
   LET'S CONSPIRE — shared stylesheet
   Palette per brand-guidelines.md. Contrast verified 2026-08-18.
   Sparkle Lemon is deliberately NOT used in the interface; it
   lives only inside the logo artwork. Marigold + Cream carry
   the accents. Melissa's call, 2026-08-18.
   ============================================================ */
:root{
  --purple:#310D7A;      /* Conspiracy Purple - leads */
  --violet:#5B2BD6;      /* Electric Violet - cream-only text, AA 6.91:1 */
  --marigold:#FFB000;    /* Daisy Marigold - fills + accents */
  --cream:#FCF3E3;       /* Petal Cream - the ground */
  --green:#0B5A18;       /* Stem Green */
  --ink:#150534;         /* Ink - body copy + linework, 17.29:1 */
  --measure:68ch;
  --pad:24px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--cream);color:var(--ink);
  font-family:'Work Sans',system-ui,sans-serif;
  font-size:19px;line-height:1.6;
}
h1,h2,h3{font-family:'Abril Fatface',Georgia,serif;font-weight:400;color:var(--purple);line-height:1.1;margin:0 0 .45em}
h1{font-size:clamp(42px,6.6vw,76px)}
h2{font-size:clamp(31px,4.4vw,48px);line-height:1.15}
h3{font-size:clamp(23px,2.5vw,29px);line-height:1.2}
p,ul,ol{max-width:var(--measure);margin:0 0 1.1em}
li{margin-bottom:.5em}
a{color:var(--violet)}
.wrap{max-width:1180px;margin:0 auto;padding:0 var(--pad)}
section{padding:clamp(58px,9vw,106px) 0}
.lead{font-size:22px;max-width:54ch}

.eyebrow{font-size:14px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--violet);margin:0 0 14px;display:block}

.btn{display:inline-block;font-weight:600;font-size:17px;text-decoration:none;
  padding:15px 30px;border:2px solid var(--ink);border-radius:4px;
  background:var(--purple);color:var(--cream);transition:background .15s,color .15s,transform .1s}
.btn:hover{background:var(--marigold);color:var(--purple)}
.btn:active{transform:translateY(1px)}
.btn-ghost{background:transparent;color:var(--purple)}
.btn-ghost:hover{background:var(--marigold)}

.card{background:var(--cream);border:2px solid var(--ink);border-radius:4px;
  padding:30px 28px;box-shadow:4px 4px 0 var(--ink)}
.grid{display:grid;gap:26px}
@media(min-width:780px){.grid-2{grid-template-columns:1fr 1fr}.portrait-col{padding-left:clamp(36px,7vw,110px)}}
@media(min-width:980px){.grid-3{grid-template-columns:repeat(3,1fr)}}

.invert{background:var(--purple);color:var(--cream)}
.invert h2,.invert h3{color:var(--cream)}
.invert .eyebrow{color:var(--marigold)}
.invert a{color:var(--marigold)}
.invert .btn{background:var(--marigold);color:var(--purple);border-color:var(--cream)}
.invert .btn:hover{background:var(--cream)}

header{padding:22px 0;border-bottom:2px solid var(--ink)}
.logo{display:block;width:clamp(190px,26vw,264px);height:auto}

.daisy-divider{display:block;width:min(460px,80%);height:auto;margin:44px 0 0;opacity:.95}

.chip{display:inline-block;font-size:13.5px;font-weight:600;letter-spacing:.04em;
  padding:6px 15px;border-radius:999px;background:var(--marigold);color:var(--purple);margin:0 0 14px}

.stage{display:grid;gap:20px;align-items:start;padding:34px 0;border-top:2px solid var(--ink)}
@media(min-width:820px){.stage{grid-template-columns:132px 1fr}}
.stage-num{font-family:'Abril Fatface',Georgia,serif;font-size:64px;line-height:.9;color:var(--marigold);
  -webkit-text-stroke:2px var(--ink)}
.stage h3{margin-bottom:.3em}
.stage p:last-child{margin-bottom:0}

.mail{font-family:'Abril Fatface',Georgia,serif;font-size:clamp(25px,3.8vw,42px);
  color:var(--purple);text-decoration:none;border-bottom:3px solid var(--marigold);word-break:break-word}
.mail:hover{border-bottom-width:5px}

footer{background:var(--purple);color:var(--cream);padding:52px 0 40px;font-size:16px}
footer a{color:var(--cream);text-decoration:underline;text-underline-offset:3px}
footer a:hover{color:var(--marigold)}
.footlinks{display:flex;flex-wrap:wrap;gap:12px 28px;padding:0;margin:0 0 24px;list-style:none;font-weight:600}
.fineprint{opacity:.85;font-size:14.5px;max-width:60ch;line-height:1.55}

/* ---------- policy pages ---------- */
.policy{padding:clamp(46px,7vw,78px) 0 clamp(58px,9vw,96px)}
.policy h1{font-size:clamp(38px,5.4vw,62px);margin-bottom:.25em}
.policy h2{font-size:clamp(25px,2.9vw,34px);margin:2em 0 .5em}
.policy h2:first-of-type{margin-top:1.4em}
.policy h3{font-size:clamp(20px,2.1vw,24px);margin:1.6em 0 .4em}
.updated{font-size:15px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  color:var(--violet);margin:0 0 2em}
.backlink{display:inline-block;font-weight:600;font-size:16px;margin-bottom:2.4em;
  text-decoration:none;color:var(--violet);border-bottom:2px solid var(--marigold)}
.note{border-left:5px solid var(--marigold);padding:2px 0 2px 20px;margin:0 0 1.4em;max-width:var(--measure)}

/* added 2026-09-17: definition line + client quotes */
.define{font-size:19px;letter-spacing:.02em;opacity:.8;margin:0 0 44px}
#top{padding-top:clamp(28px,4vw,48px)}
.quote{margin:22px 0 0;padding-left:16px;border-left:3px solid var(--marigold);font-style:italic;line-height:1.5}
.quote cite{display:block;margin-top:8px;font-style:normal;font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.quote-big{font-family:'Abril Fatface',Georgia,serif;font-style:normal;font-size:clamp(24px,3.4vw,38px);line-height:1.25;max-width:26ch;border-left-width:4px;padding-left:22px}
.quote-big cite{font-family:inherit;font-size:15px;margin-top:14px}

/* added 2026-10-05: proof quotes run the full width, Monica's a size down */
.quote-wide{max-width:var(--measure)}
.quote-big.quote-wide{font-size:clamp(21px,2.6vw,30px)}

.daisy-divider-right{margin-top:56px}

/* added 2026-10-05: hand-drawn daisies tucked into section edges */
.daisy-host{position:relative;overflow:hidden}
.daisy-host .wrap{position:relative;z-index:1}
.daisy-deco{position:absolute;pointer-events:none;height:auto;z-index:0}
.daisy-right{width:clamp(70px,9vw,120px);right:clamp(40px,11vw,160px);bottom:-60px;transform:rotate(8deg)}
.daisy-left-low{width:clamp(60px,7vw,95px);right:clamp(12px,8vw,140px);top:40px;transform:rotate(-10deg)}
.daisy-pair-a{width:clamp(70px,8vw,115px);right:clamp(12px,7vw,120px);bottom:-20px;transform:rotate(-6deg)}
.daisy-pair-b{width:clamp(50px,5.5vw,80px);right:clamp(70px,13vw,210px);bottom:-40px;transform:rotate(12deg)}
@media(max-width:779px){
  .daisy-left-low,.daisy-pair-b{display:none}
  .daisy-deco{opacity:.55}
}

/* added 2026-10-05: contact form replaces the listed email */
.contact-form{display:grid;gap:20px;max-width:560px;margin-top:32px}
.contact-form label{display:grid;gap:6px;font-weight:600;font-size:16px;color:var(--purple)}
.contact-form input,.contact-form textarea{font:inherit;font-weight:400;color:var(--ink);
  background:#fff;border:2px solid var(--ink);border-radius:4px;padding:12px 14px;width:100%}
.contact-form input:focus,.contact-form textarea:focus{outline:3px solid var(--marigold);outline-offset:1px}
.contact-form textarea{resize:vertical}
.contact-form .btn{justify-self:start;cursor:pointer}
[hidden]{display:none !important}
.form-error{color:#9B1C1C;font-weight:600;font-size:16px;margin:0}
.form-thanks{margin-top:32px;max-width:560px;padding:26px 28px;border:2px solid var(--ink);
  border-radius:4px;box-shadow:4px 4px 0 var(--marigold)}
.form-thanks p{margin:0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
