/* Primaccino brand system | v0.3: light aqua, blush pink, pearls and ribbons */
:root { --pc-ink:#354662;--pc-aqua:#c8ebff;--pc-aqua-strong:#8bcff0;--pc-blush:#ffd8e8;--pc-pink:#ad4078;--pc-pink-dark:#87345e;--pc-white:#fffafd;--pc-mist:#ecf8ff;--pc-edge:#e8d7e9;--pc-shadow:0 18px 52px rgba(70,94,139,.13); }
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{background:#fffafd}
::selection{background:#ffbbd8;color:#273d5a}
:focus-visible{outline-color:#a33b71!important;outline-offset:3px}
#header-group{position:relative;z-index:11}
#header-group .header-section{background:linear-gradient(96deg,#fcf8ff 0%,#eaf8ff 47%,#ffedf6 100%);border-bottom:1px solid #dbeaf4}
#header-group .header-section .header__row{min-height:70px}
#header-group .header-logo{gap:10px}
#header-group .pc-nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:#843964!important}
#header-group .pc-nav-logo img{height:54px;width:54px;object-fit:contain;flex:none;filter:drop-shadow(0 4px 8px #df84a037)}
#header-group .pc-nav-logo span{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:700;font-size:clamp(18px,1.75vw,25px);letter-spacing:-.04em;white-space:nowrap}
#header-group .header__icon,#header-group a{color:#364c67}
#header-group a:hover{color:#963d70}
#header-group .header-announcements{background:#f8e9f4}
#header-group .header-announcements a,#header-group .header-announcements p{color:#673d64}
footer{background:#2c4968}
footer a{text-underline-offset:4px}
button, input,textarea,select{accent-color:#ad4078}
.button,button[type=submit],.shopify-payment-button__button{transition:filter .17s ease,transform .17s ease}
.button:hover,button[type=submit]:hover,.shopify-payment-button__button:hover{filter:brightness(.96)}
.pc-pill{display:inline-flex;justify-content:center;align-items:center;min-height:51px;padding:12px 25px;border-radius:999px;font-size:14px;line-height:1.3;font-weight:700;gap:12px;text-decoration:none!important;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.pc-pill:hover{transform:translateY(-2px)}
.pc-pill--primary{color:white!important;background:#a53c75;box-shadow:0 9px 22px #b94f8a38}
.pc-pill--primary:hover{background:#84345f}
.pc-pill--secondary{background:#fffafd;color:#7b3a69!important;border:1px solid #eabfda}
.pc-pill--secondary:hover{background:#ffeff7}
.pc-hero{position:relative;isolation:isolate;overflow:hidden;color:var(--pc-ink);background:radial-gradient(ellipse at 78% 12%,#fff7fd 0%,transparent 38%),radial-gradient(ellipse at 0% 85%,#ffdbe959 0%,transparent 45%),linear-gradient(117deg,#e5f6ff,#def1ff 52%,#fce3f0);border-bottom:1px solid #e6cfeb}
.pc-hero:before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.25;background-image:radial-gradient(circle at 22% 22%,white 0 2px,transparent 4px),radial-gradient(circle at 81% 80%,white 0 4px,transparent 6px);background-size:127px 133px,201px 203px;z-index:-1}
.pc-hero__inner{max-width:1390px;margin:0 auto;padding:clamp(48px,6vw,91px) clamp(22px,6vw,82px) 65px;min-height:575px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(290px,.9fr);gap:clamp(32px,5vw,85px);align-items:center}
.pc-hero__eyebrow{display:inline-flex;gap:9px;align-items:center;padding:9px 15px;border:1px solid #e3cde5;background:#fffafdcf;border-radius:999px;color:#8e4877;font-size:12px;font-weight:700;letter-spacing:.07em;box-shadow:0 5px 15px #ddb1d428}
.pc-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,5.5vw,87px);line-height:1.06;letter-spacing:-.045em;max-width:650px;color:#405878;font-weight:600;margin:27px 0 21px;text-wrap:balance}
.pc-hero__description{font-size:clamp(15px,1.4vw,18px);line-height:1.8;color:#485975;max-width:620px;margin:0 0 28px}
.pc-hero__ctas{display:flex;flex-wrap:wrap;align-items:center;gap:13px}
.pc-hero__craft{font-size:12px;color:#825b78;margin:22px 0 0;letter-spacing:.02em}
.pc-hero__craft span{color:#ba5388;font-size:17px;padding-right:4px}
.pc-hero__visual{position:relative;max-width:500px;aspect-ratio:1;display:grid;place-items:center;margin-inline:auto;width:100%}
.pc-hero__halo{position:absolute;inset:2%;border-radius:50%;background:radial-gradient(circle,#fffefdaf 0%,#fffafa96 40%,transparent 70%);filter:blur(12px)}
.pc-hero__visual:before,.pc-hero__visual:after{content:'';position:absolute;inset:2%;border:1px solid #ffffffa6;border-radius:50%;transform:scale(1.09)}
.pc-hero__visual:after{inset:-7%;border-style:dashed;border-color:#ffffffa3;transform:rotate(9deg)}
.pc-hero__visual img{width:88%;height:auto;aspect-ratio:1;object-fit:contain;position:relative;filter:drop-shadow(0 24px 30px #5485aa32);z-index:1}
.pc-hero__orbit{position:absolute;z-index:2;color:#ffffff;text-shadow:0 0 4px #85bdff,0 0 12px #85bdff}
.pc-hero__orbit--one{left:7%;top:9%;font-size:48px}.pc-hero__orbit--two{right:0;top:22%;font-size:31px}.pc-hero__orbit--three{right:2%;bottom:7%;font-size:48px}
.pc-hero__sticker{position:absolute;z-index:3;bottom:1%;left:0;background:#fffafa;color:#b24e80;border:1px solid #ecc8e0;border-radius:19px;padding:13px 18px;box-shadow:var(--pc-shadow);transform:rotate(-9deg);font-family:Georgia,serif;font-style:italic;font-size:15px;line-height:1.3;text-align:center}
.pc-hero__sticker span{position:absolute;top:-25px;right:-18px;font-size:30px;color:#ee92c7}
.pc-hero__sparkle{position:absolute;color:white;text-shadow:0 0 16px #87c8fb;font-size:32px;pointer-events:none}
.pc-hero__sparkle--one{left:4%;top:12%}.pc-hero__sparkle--two{right:3%;top:8%}.pc-hero__sparkle--three{left:43%;bottom:24%}
.pc-hero__ribbon{padding:16px clamp(14px,3vw,45px);display:flex;align-items:center;justify-content:center;gap:clamp(18px,6vw,90px);flex-wrap:wrap;border-top:1px solid #ffffff9e;background:#fef9fd9e;color:#855575;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.pc-steps{background:radial-gradient(ellipse at 20% 0,#eaf8ff 0%,transparent 55%),linear-gradient(180deg,#fff9fd,#fffefd);color:var(--pc-ink);border-top:1px solid #f4e4ee}
.pc-steps__shell{max-width:1380px;margin:auto;padding:clamp(50px,5vw,82px) clamp(20px,6vw,78px) clamp(54px,6vw,96px)}
.pc-steps__eyebrow{font-size:11px;font-weight:800;color:#a05281;letter-spacing:.18em;text-align:center}
.pc-steps h2{text-align:center;font-family:Georgia,serif;font-size:clamp(32px,3.5vw,52px);color:#415b7d;line-height:1.12;margin:12px auto 34px;max-width:800px}
.pc-steps h2 span{color:#cd76a5}
.pc-steps__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pc-steps__card{position:relative;padding:30px 30px 35px;background:#fff;border:1px solid #e7d9eb;border-radius:25px;box-shadow:0 10px 30px #769dc416;overflow:hidden}
.pc-steps__card:before{content:'';position:absolute;right:-50px;top:-54px;width:150px;aspect-ratio:1;border-radius:50%;background:#edf9ff}
.pc-steps__card:nth-child(2):before{background:#fff0f6}.pc-steps__card:nth-child(3):before{background:#eceaff}
.pc-steps__symbol{position:relative;z-index:1;font-size:31px;line-height:1;color:#b55f95;margin-bottom:28px}
.pc-steps__card>span{color:#ae6b96;font-size:12px;letter-spacing:.16em;font-weight:800}
.pc-steps h3{font-family:Georgia,serif;font-size:25px;color:#435979;margin:12px 0}
.pc-steps__card p{font-size:14px;line-height:1.7;color:#5b6c86;margin:0}
.pc-steps__note{text-align:center;font-size:12px;line-height:1.7;color:#65728b;margin:25px auto 0;max-width:700px}
@media(max-width:1050px){.pc-hero__inner{grid-template-columns:minmax(0,1fr) minmax(250px,.8fr);gap:22px;min-height:500px}.pc-hero h1{font-size:clamp(45px,5.9vw,70px)}}
@media(max-width:750px){#header-group .pc-nav-logo img{height:43px;width:43px}#header-group .pc-nav-logo span{font-size:18px}.pc-hero__inner{grid-template-columns:1fr;min-height:0;padding-top:40px;padding-bottom:34px;gap:16px}.pc-hero__copy{text-align:center}.pc-hero h1{font-size:clamp(42px,10vw,63px);margin:22px auto 14px}.pc-hero__description{margin:0 auto 22px;line-height:1.65}.pc-hero__ctas{justify-content:center}.pc-hero__visual{max-width:340px;margin-top:5px}.pc-hero__sticker{bottom:0;left:-3%;font-size:12px}.pc-hero__ribbon{gap:10px 20px;padding-block:15px;font-size:10px}.pc-steps__grid{grid-template-columns:1fr}.pc-steps__card{padding:25px}.pc-steps__symbol{margin-bottom:12px}}
@media(max-width:390px){.pc-hero__eyebrow{font-size:10px;letter-spacing:0}.pc-pill{width:100%}.pc-hero__visual{max-width:280px}.pc-hero__ribbon{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pc-pill{transition:none}}
