/* Emotional Cakes public site V1 */
:root{
  --ec-pink:#FF7BAC;--ec-orange:#FF9F5A;--ec-yellow:#FFD93D;--ec-green:#6BCB77;--ec-blue:#4ECDC4;--ec-purple:#C77DFF;--ec-lavender:#EDE0FF;--ec-bg:#FFF6FB;--ec-surface:#FFFFFF;--ec-text:#2D1B4E;--ec-muted:#7B6B95;--ec-border:#EDD9FF;
  --font-display:'Fredoka One',cursive;--font-body:'Poppins',sans-serif;--font-ui:'Work Sans',sans-serif;--radius-sm:8px;--radius-md:14px;--radius-lg:24px;--radius-xl:36px;--radius-pill:999px;--shadow-sm:0 2px 8px rgba(180,100,220,.10);--shadow-md:0 4px 20px rgba(180,100,220,.15);--shadow-lg:0 18px 60px rgba(180,100,220,.20)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 8% 8%,rgba(255,217,61,.34),transparent 26rem),radial-gradient(circle at 88% 12%,rgba(78,205,196,.22),transparent 28rem),linear-gradient(180deg,#fff6fb 0%,#fff 48%,#fff6fb 100%);color:var(--ec-text);font-family:var(--font-body);line-height:1.65}a{color:inherit}.skip-link{position:absolute;left:-999px;top:8px;background:var(--ec-text);color:white;padding:10px 14px;border-radius:var(--radius-sm);z-index:999}.skip-link:focus{left:8px}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:20px;justify-content:space-between;padding:14px clamp(16px,4vw,48px);background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:2px solid var(--ec-border)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--font-display);font-size:clamp(20px,2.4vw,28px)}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#ffe0ee,#ede0ff);box-shadow:var(--shadow-sm)}.site-nav{display:flex;gap:6px;align-items:center}.site-nav a,.nav-cta{font-family:var(--font-ui);font-weight:800;font-size:14px;text-decoration:none;border-radius:var(--radius-pill);padding:10px 14px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.site-nav a:hover,.site-nav a.active{background:#fff0f6;color:#c0447a}.nav-cta{background:var(--ec-yellow);box-shadow:0 4px 0 #c8a200;color:#5a3a00}.section{padding:clamp(56px,8vw,96px) clamp(18px,5vw,72px)}.container{width:min(1120px,100%);margin:0 auto}.hero{padding:clamp(44px,7vw,86px) clamp(18px,5vw,72px) clamp(64px,9vw,108px)}.hero-grid{width:min(1160px,100%);margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}.eyebrow,.label{font-family:var(--font-ui);font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#8a43d2;font-size:12px}.hero h1,.page-hero h1,h2{font-family:var(--font-display);line-height:1.03;letter-spacing:-.01em}.hero h1{font-size:clamp(48px,8vw,86px);margin:14px 0 18px}.hero p.lede,.page-hero p{font-size:clamp(18px,2.3vw,23px);font-weight:600;color:var(--ec-muted);max-width:720px}.rainbow-word span{display:inline-block}.r1{color:#ff4f7b}.r2{color:#ff8c42}.r3{color:#d2a600}.r4{color:#30a954}.r5{color:#1f9db9}.r6{color:#9b59e8}.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--radius-pill);font-family:var(--font-body);font-weight:800;text-decoration:none;border:none;cursor:pointer;transition:.16s transform,.16s box-shadow,.16s background;padding:13px 24px;min-height:48px}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--ec-pink);color:#fff;box-shadow:0 4px 0 #c45e8a}.btn-secondary{background:var(--ec-purple);color:#fff;box-shadow:0 4px 0 #9650d4}.btn-yellow{background:var(--ec-yellow);color:#5a3a00;box-shadow:0 4px 0 #c8a200}.btn-outline{background:white;border:2px solid var(--ec-border);color:var(--ec-text)}.hero-art{position:relative;min-height:420px}.cake-card{position:absolute;inset:22px 8px auto auto;width:min(430px,92%);background:white;border:2px solid var(--ec-border);border-radius:40px;padding:26px;box-shadow:var(--shadow-lg);transform:rotate(2deg)}.frosting-bowl{font-size:96px;text-align:center;background:linear-gradient(135deg,#fff0f6,#f0fbff);border-radius:32px;padding:36px;border:2px dashed #ffd6e8}.mini-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.mini-stat{border-radius:20px;padding:14px;background:#fff6fb;border:1px solid var(--ec-border)}.mini-stat strong{display:block;font-family:var(--font-display);font-size:24px}.sprinkle{position:absolute;border-radius:999px;width:70px;height:18px;transform:rotate(-20deg)}.s1{background:var(--ec-yellow);left:0;top:40px}.s2{background:var(--ec-blue);right:12px;bottom:56px}.s3{background:var(--ec-orange);left:18%;bottom:0}.panel{background:rgba(255,255,255,.9);border:2px solid var(--ec-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:clamp(24px,4vw,42px)}h2{font-size:clamp(34px,5vw,54px);margin:10px 0 14px}.section-intro{max-width:760px;margin-bottom:30px}.muted{color:var(--ec-muted)}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{display:flex;flex-direction:column;gap:10px;background:#fff;border:2px solid var(--ec-border);border-radius:var(--radius-lg);padding:24px;text-decoration:none;box-shadow:var(--shadow-sm);transition:.18s transform,.18s box-shadow}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.card.pink{border-color:#ffd6e8;background:linear-gradient(160deg,#fff5f9,#fff)}.card.blue{border-color:#c5edff;background:linear-gradient(160deg,#f0faff,#fff)}.card.green{border-color:#bfffd0;background:linear-gradient(160deg,#f2fff7,#fff)}.card.purple{border-color:#e8ddff;background:linear-gradient(160deg,#f8f4ff,#fff)}.icon{font-size:38px}.card h3{font-family:var(--font-display);font-size:26px;margin:0}.price{font-family:var(--font-display);font-size:34px;margin-top:auto}.badge-row{display:flex;flex-wrap:wrap;gap:8px}.badge{display:inline-block;border-radius:var(--radius-pill);font-family:var(--font-ui);font-weight:800;font-size:11px;letter-spacing:.04em;padding:5px 11px}.badge-pink{background:#ffe0ee;color:#c0447a}.badge-blue{background:#d6f3ff;color:#1a7faa}.badge-yellow{background:#fff3c0;color:#7a5800}.badge-green{background:#ccffe0;color:#1a7a40}.badge-purple{background:#ede0ff;color:#6a35b8}.badge-orange{background:#ffe8d6;color:#a04500}.page-hero{padding:60px clamp(18px,5vw,72px) 36px}.page-hero .container{background:linear-gradient(135deg,#fff,#fff0f6 55%,#f4eeff);border:2px solid var(--ec-border);border-radius:42px;padding:clamp(30px,5vw,58px);box-shadow:var(--shadow-md)}.page-hero h1{font-size:clamp(42px,7vw,76px);margin:12px 0}.detail-layout{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}.detail-box{position:sticky;top:96px}.list{padding-left:22px}.list li{margin:10px 0}.info-list{display:grid;gap:12px;margin:0}.info-list div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--ec-border);padding-bottom:10px}.info-list dt{font-weight:800}.info-list dd{margin:0;text-align:right;color:var(--ec-muted)}.store-product{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}.emoji-tile{width:74px;height:74px;border-radius:24px;display:grid;place-items:center;font-size:38px;background:linear-gradient(135deg,#fff0f6,#ede0ff);border:2px solid var(--ec-border)}.gift-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gift{background:#fff;border:2px solid var(--ec-border);border-radius:20px;padding:18px}.gift strong{font-family:var(--font-display);font-size:28px}.notice{background:#fff9d9;border:2px solid #ffe889;border-radius:24px;padding:18px;color:#5a3a00}.site-footer{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:24px;padding:42px clamp(18px,5vw,72px);background:var(--ec-text);color:#f8edff}.footer-brand{font-family:var(--font-display);font-size:30px;margin:0 0 8px}.footer-links{display:grid;gap:9px}.footer-links a{color:#fff;text-decoration:none}.tiny{font-size:12px;color:#d8c9ef}.checkout-placeholder{cursor:not-allowed;opacity:.88}.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti i{position:absolute;width:9px;height:18px;border-radius:999px;opacity:.75}.confetti i:nth-child(1){left:12%;top:18%;background:var(--ec-pink);transform:rotate(22deg)}.confetti i:nth-child(2){left:78%;top:24%;background:var(--ec-blue);transform:rotate(-16deg)}.confetti i:nth-child(3){left:64%;top:76%;background:var(--ec-yellow);transform:rotate(38deg)}.confetti i:nth-child(4){left:22%;top:72%;background:var(--ec-green);transform:rotate(-28deg)}
@media (max-width:900px){.site-header{align-items:flex-start;flex-wrap:wrap;gap:12px}.site-nav{order:3;width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;padding-bottom:6px}.site-nav a{scroll-snap-align:start;flex-shrink:0}.hero-grid,.detail-layout,.site-footer{grid-template-columns:1fr}.hero-art{min-height:330px}.cake-card{position:relative;inset:auto;width:100%;transform:none}.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.detail-box{position:static}.store-product{grid-template-columns:1fr}.gift-grid{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr;text-align:center}.footer-links{justify-items:center}}
@media (max-width:560px){.nav-cta{display:none}.hero,.section,.page-hero{padding-left:14px;padding-right:14px}.panel,.page-hero .container{border-radius:26px}.cta-row .btn{width:100%}.gift-grid{grid-template-columns:1fr}.site-nav a{padding:8px 12px}.brand{font-size:18px}.brand-mark{width:36px;height:36px;font-size:20px}.site-header{padding:10px 12px}.site-nav a{padding:10px 14px;font-size:13px}.hero h1{font-size:36px}.page-hero h1{font-size:32px}.panel{padding:18px}.site-form .field{margin-bottom:16px}.site-form input,.site-form textarea{padding:14px;font-size:16px}.site-form .btn{padding:14px;font-size:16px}.site-footer{padding:28px 14px}}
@media (max-width:380px){.hero h1,.page-hero h1{font-size:28px}.site-nav a{padding:8px 10px;font-size:12px}}

/* Homepage confidence-copy refresh */
.section-tight{padding-top:clamp(36px,5vw,64px)}.hero-support{font-size:clamp(18px,2vw,22px);max-width:680px}.split-panel,.about-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,5vw,56px);align-items:center}.check-list,.promise-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.check-list li,.promise-list li{position:relative;padding:16px 18px 16px 52px;background:#fff;border:2px solid var(--ec-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);font-weight:700}.check-list li::before,.promise-list li::before{content:'✓';position:absolute;left:18px;top:15px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ec-green);color:#fff;font-family:var(--font-ui);font-weight:900}.closing-line,.frosting-line{margin:24px 0 0;font-family:var(--font-display);font-size:clamp(22px,3vw,32px);line-height:1.2;color:#c0447a}.promise-panel{text-align:center}.promise-panel .section-intro{margin-left:auto;margin-right:auto}.promise-list{grid-template-columns:repeat(3,1fr);text-align:left;margin-top:28px}.service-grid,.testimonial-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}.service-card,.testimonial-card{background:#fff;border:2px solid var(--ec-border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-md)}.service-card{display:flex;flex-direction:column;align-items:flex-start}.service-card h3{margin:0 0 10px;font-size:22px}.service-card p{color:var(--ec-muted);margin:0 0 20px}.service-card .btn{margin-top:auto}.testimonial-grid{grid-template-columns:repeat(3,1fr)}.testimonial-card{margin:0;background:linear-gradient(180deg,#fff,#fff8fc)}.testimonial-card blockquote{margin:0;color:var(--ec-text);font-weight:700}.testimonial-card figcaption{margin-top:16px;color:#8a43d2;font-family:var(--font-ui);font-weight:800}.about-avatar{display:grid;place-items:center;min-height:260px;border-radius:var(--radius-xl);background:radial-gradient(circle at 35% 30%,#fff 0 18%,transparent 19%),linear-gradient(135deg,#ffe0ee,#ede0ff);font-size:96px;box-shadow:var(--shadow-lg)}.social-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.social-links a{font-family:var(--font-ui);font-weight:800;text-decoration:none;background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.35);border-radius:var(--radius-pill);padding:8px 12px;color:#fff}
/* Form styles */
@keyframes pop{0%{opacity:0;transform:translateY(12px)}100%{opacity:1;transform:translateY(0)}}
.site-form{animation:pop .35s ease-in both}
.form-success{color:#2f6b36;margin-top:14px;font-weight:800;font-family:var(--font-ui)}
.form-submit-error{color:#b8001f;margin-top:14px;font-weight:800;font-family:var(--font-ui)}
.form-note{margin-top:12px}
.site-form .field{margin-bottom:18px}
.site-form label{display:block;font-family:var(--font-ui);font-weight:700;font-size:13px;color:var(--ec-text);margin-bottom:6px}
.site-form input[type=text],
.site-form input[type=email],
.site-form input[type=tel],
.site-form textarea,
.site-form select{width:100%;padding:12px 14px;border:2px solid var(--ec-border);border-radius:var(--radius-md);background:#fff;font-family:var(--font-body);font-size:15px;color:var(--ec-text);transition:border .15s,box-shadow .15s}
.site-form input:focus,
.site-form textarea:focus,
.site-form select:focus{outline:none;border-color:var(--ec-purple);box-shadow:0 0 0 3px rgba(199,125,255,.18)}
.site-form textarea{min-height:120px;resize:vertical}
.site-form .btn{margin-top:4px;width:100%;justify-content:center}
