:root{--cream:#fff9f1;--paper:#fffdf8;--ink:#513b32;--muted:#866c60;--coral:#b45345;--pink:#f5ddd8;--line:#e9d8c8;--teal:#147b7b}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:14px/1.6 'Segoe UI',Arial,sans-serif}body:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 0 5%,#f5d4cb80,transparent 40%),radial-gradient(ellipse at 100% 60%,#e8e6ce65,transparent 35%)}body.lock{overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--teal);outline-offset:4px}.bio{width:min(520px,calc(100% - 36px));margin:0 auto;padding:38px 0 28px}.brand{text-align:center}.logo{display:block;width:130px;height:130px;object-fit:cover;margin:0 auto 12px;border-radius:50%;border:5px solid #fff;box-shadow:0 5px 24px #513b3210}.handle{font-size:12px;text-decoration:none;color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:600;color:var(--coral)}.brand>.eyebrow{margin:23px 0 12px}h1{font:normal clamp(38px,9vw,48px)/1.12 Georgia,serif;letter-spacing:-1.5px;margin:0}h1 em{font-weight:normal;color:var(--coral)}.intro{font-size:14px;margin:17px 0 3px;font-weight:600}.specialties{font-size:12px;color:var(--muted);margin:0 0 28px}.links{display:grid;gap:10px}.link{border:1px solid var(--line);background:var(--paper);border-radius:14px;width:100%;display:flex;align-items:center;text-align:left;padding:18px 17px;gap:14px;box-shadow:0 3px 10px #513b3204;transition:transform .2s,box-shadow .2s}.link:hover,.product:hover{transform:translateY(-2px);box-shadow:0 6px 20px #513b3212}.link.primary{background:var(--coral);color:#fff;border-color:var(--coral)}.link strong{font-size:14px;display:block;font-weight:600}.link small{font-size:11px;display:block;opacity:.8;margin-top:2px}.icon{font:26px Georgia,serif;width:27px;text-align:center;flex-shrink:0}.arrow{margin-left:auto;font:25px Georgia,serif}.section-label{display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.19em;color:var(--muted);margin:30px 0 17px}.section-label span{height:1px;background:var(--line);flex:1}.catalog{display:grid;gap:12px}.product{padding:0;border:1px solid var(--line);border-radius:15px;overflow:hidden;text-align:left;background:var(--paper);transition:transform .2s,box-shadow .2s}.hero-card{display:grid;grid-template-columns:41% 59%;min-height:190px}.hero-card>img{width:100%;height:100%;max-height:205px;object-fit:cover;object-position:left}.product-copy{padding:23px 20px;position:relative}.product strong{font:normal 25px/1.18 Georgia,serif;display:block;margin:9px 0}.product small{font-size:11px;color:var(--muted);display:block}.round-arrow{display:block;margin-top:14px;font-size:21px;color:var(--coral)}.card-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.text-card{padding:21px 18px 0;background:#f1eee2}.text-card.peach{background:#f7e3d7}.card-number{font-size:9px;letter-spacing:.13em;color:var(--muted)}.text-card strong{font-size:27px;margin:17px 0 10px}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #513b3220;margin-top:22px;padding:13px 0;font-size:10px}.card-bottom b{font-size:20px;font-weight:400}.wide-card{display:flex;align-items:center;gap:18px;min-height:116px}.wide-card img{width:105px;height:128px;object-fit:cover;object-position:50% 36%}.wide-card strong{font-size:23px}.wide-card .eyebrow{font-size:8px;letter-spacing:.12em}.wide-card>b{margin-left:auto;padding-right:19px;font-size:22px;font-weight:400}.signature{text-align:center;font:italic 21px Georgia,serif;color:var(--coral);margin:30px 0 21px}footer{text-align:center;color:var(--muted);font-size:10px;line-height:1.9}footer a{text-decoration:none}dialog{width:min(620px,calc(100% - 24px));max-height:calc(100dvh - 32px);border:1px solid var(--line);padding:0;border-radius:20px;background:var(--cream);color:var(--ink);box-shadow:0 25px 100px #30201540}dialog::backdrop{background:#38271e80;backdrop-filter:blur(5px)}.modal-head{display:flex;gap:10px;align-items:center;padding:17px 22px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--cream);z-index:2}h2{font:normal 26px/1.2 Georgia,serif;margin:0;color:var(--coral)}.close{margin-left:auto;width:38px;height:38px;border-radius:50%;background:var(--paper);border:1px solid var(--line);font-size:24px;flex-shrink:0}.content{padding:8px 24px 25px}.content h3{font:normal 24px/1.3 Georgia,serif;color:var(--coral);margin:24px 0 10px}.content p{margin:10px 0}.content h4{font:normal 21px Georgia,serif;margin:0}.action{border:0;background:var(--coral);color:white;border-radius:11px;padding:15px 18px;width:100%;font-weight:600;margin-top:22px}.action:hover{background:#994237}.reference{float:right;width:38%;border-radius:12px;margin:18px 0 12px 20px}.size{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:16px 0}.size h3{margin:0 0 4px}.size p{margin:2px 0;font-size:13px}.size small{color:var(--muted);font-size:12px}.price{text-align:right;flex-shrink:0}.price small,.price strong{display:block}.price strong{font:normal 24px Georgia,serif;color:var(--coral)}.note{font-size:12px;color:var(--muted)}.pill{background:#f3e9dc;border-radius:10px;padding:14px}.flavor{padding:15px 0;border-bottom:1px solid var(--line)}.flavor h4{color:var(--coral)}.flavor p{font-size:13px;margin-bottom:0}.content .group-title{margin-top:28px;font-size:30px}.extras dt{margin-top:19px;font-weight:600}.extras dd{margin:2px 0 16px;color:var(--coral)}label{display:block;margin:17px 0 6px;font-size:13px;font-weight:600}input,select,textarea{width:100%;border:1px solid #d8c6b6;border-radius:9px;background:#fffefa;padding:12px;color:var(--ink);font-size:16px;min-height:47px}input:focus,select:focus,textarea:focus{outline:2px solid var(--teal);outline-offset:1px}textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.center{text-align:center}[hidden]{display:none!important}@media(min-width:800px){.bio{padding-top:45px}}@media(max-width:380px){.bio{width:calc(100% - 26px)}.product-copy{padding:18px 13px}.product strong{font-size:23px}.link{padding:16px 12px;gap:10px}.link strong{font-size:13px}.link small{font-size:10px}.wide-card{gap:12px}.wide-card img{width:88px}.wide-card strong{font-size:21px}.content{padding:6px 18px 22px}h2{font-size:23px}.form-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Cards de texto, sem imagens. */
:root{--cream:#fff7f9;--paper:#fffdfd;--ink:#54353d;--muted:#86616c;--coral:#b23765;--line:#ecd0da}
body:before{background:radial-gradient(ellipse at 0 0,#f7d8e580,transparent 50%),radial-gradient(ellipse at 100% 80%,#fbe7df80,transparent 45%)}
.bio{width:min(540px,calc(100% - 30px));padding-top:36px}
.wordmark{display:flex;flex-direction:column;align-items:center;font:900 53px/.85 'Arial Black','Segoe UI',sans-serif;letter-spacing:-3px;margin:7px auto 23px}.wordmark>span:first-child{color:#f66c25}.wordmark>span:nth-child(2){color:#00a9ad}.brand-heart{color:#ed2876;font-size:39px;margin-left:4px}.wordmark>small{font:700 10px 'Segoe UI',sans-serif;letter-spacing:5px;margin:12px 0 0 5px;color:#54352b}
h1{font-size:30px;line-height:1.2;letter-spacing:-.6px}h1 br{display:none}.brand>.eyebrow{margin-top:17px}.intro{margin-top:12px}.specialties{margin-bottom:25px}.links,.catalog{gap:12px}.link{text-align:center;position:relative;padding:19px 51px;min-height:88px;border-radius:16px}.link>.icon{position:absolute;left:15px}.link>.arrow{position:absolute;right:18px}.link>span:not(.icon):not(.arrow){width:100%}.link strong{font-size:16px}.link small{font-size:12px}.section-label{margin-top:27px}.pill{background:#f6e7ed}.content .group-title{font-size:25px;border-top:1px solid var(--line);padding-top:24px}.action:hover{background:#92264f}@media(max-width:380px){.link{padding-left:44px;padding-right:38px}.link strong{font-size:15px}.link small{font-size:11px}.link>.icon{left:10px}.link>.arrow{right:12px}h1{font-size:27px}}
/* Fundo original inteiro, sem filtros ou sobreposição. */
body{background:#fce4ee}
body::before{display:none;content:none}
.page-background{position:fixed;inset:0;width:100%;height:100%;object-fit:contain;object-position:center top;z-index:-1;pointer-events:none;filter:none;opacity:1}
.bio{padding-top:clamp(90px,15.5vw,235px)}
.wordmark{display:none}
.brand{margin-bottom:20px}
.brand>.eyebrow{margin:10px 0 8px}
h1{font-size:25px;letter-spacing:0}
.intro{font-size:14px;margin-top:10px}
.specialties{margin-bottom:0}
.link,.link.primary{background:transparent;border:1px solid #b2376580;color:#75344c;box-shadow:none;text-shadow:none;min-height:85px}
.link:hover,.link.primary:hover{background:#ffffff60;box-shadow:none;transform:translateY(-2px)}
.link strong{font-weight:700}
.link small{opacity:1}
.section-label{font-size:20px;font-weight:800;letter-spacing:.04em;color:#75344c;justify-content:center;margin:25px 0 16px}
.section-label>span{display:none}
.signature,footer,.handle{color:#75344c}
dialog::backdrop{background:transparent;backdrop-filter:none}
@media(max-width:600px){.bio{padding-top:clamp(82px,16vw,96px)}h1{font-size:23px}.section-label{font-size:19px}.link,.link.primary{min-height:84px}}
/* Bolos Personalizados: seções na ordem do cardápio impresso */
.cakes .cake-sec{padding:6px 0 22px;border-bottom:1px solid var(--line);margin-bottom:18px}
.cakes .center{text-align:center}
.cakes .script{font:italic 400 24px/1.25 Georgia,serif;color:var(--coral);text-align:center;margin:8px 0 12px;border:0;padding:0}
.cakes .script.sub{font-size:22px;margin-top:22px}
.cakes .hero .script{font-size:27px;color:#75344c}
.cakes .hero h3{text-align:center;color:var(--coral);text-transform:uppercase;font-size:15px;letter-spacing:.05em;border:0;padding:0}
.cakes .inside{list-style:none;margin:14px 0;padding:0;display:grid;gap:10px}
.cakes .inside li{display:flex;align-items:center;gap:14px;background:#fff8;border:1px dashed #b2376580;border-radius:14px;padding:10px 14px}
.cakes .inside b{flex:0 0 64px;text-align:center;font:700 28px/1 Georgia,serif;color:var(--coral)}
.cakes .inside b small{font-size:13px;margin-left:2px}
.cakes .inside span{text-transform:uppercase;font-size:12px;letter-spacing:.03em;font-weight:600}
.cakes .masses{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.cakes .masses li{background:#f08a8a;color:#fff;border-radius:999px;padding:5px 13px;font-size:12px;font-weight:700;text-transform:uppercase}
.cakes .masses li:nth-child(2){background:#7a4a35}.cakes .masses li:nth-child(3){background:#c0392b}
.cakes .flavor h4{font:italic 400 19px Georgia,serif;color:var(--coral);text-align:center;margin:14px 0 2px}
.cakes .flavor p{text-align:center;text-transform:uppercase;font-size:12px;margin:0}
.cakes .extras dt{text-align:center;text-transform:uppercase;font-weight:600;font-size:13px}
.cakes .extras dd{text-align:center;color:var(--coral);font:italic 17px Georgia,serif;margin:0 0 10px}
.cakes .inside b{flex:0 0 78px;white-space:nowrap;font-size:24px}
.cakes .info-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.cakes .info-list li{text-align:center;text-transform:uppercase;font-size:12px;font-weight:600;padding-top:10px;border-top:1px dashed #b2376560}.cakes .info-list li:first-child{border:0;padding:0}
/* Carrossel giratório contínuo */
.spin{position:relative;height:200px;margin:6px -15px;overflow:hidden;perspective:900px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.spin img{position:absolute;left:50%;top:8px;width:132px;height:176px;margin-left:-66px;object-fit:cover;border-radius:16px;border:2px solid #fffc;box-shadow:0 8px 20px #54353d30;will-change:transform;user-select:none;-webkit-user-drag:none}
.wa-float{position:fixed;right:18px;bottom:18px;z-index:50;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 6px 18px #0003;transition:transform .2s;animation:wa-pulse 2.4s infinite}
.wa-float:hover{transform:scale(1.08)}
@keyframes wa-pulse{0%{box-shadow:0 6px 18px #0003,0 0 0 0 #25d36699}70%{box-shadow:0 6px 18px #0003,0 0 0 16px #25d36600}100%{box-shadow:0 6px 18px #0003,0 0 0 0 #25d36600}}
@media(prefers-reduced-motion:reduce){.wa-float{animation:none}}
/* Cores da logo: laranja #f66c25, turquesa #00a9ad, rosa #ed2876 */
:root{--logo-orange:#f66c25;--logo-teal:#00a9ad;--logo-pink:#ed2876}
.link,.link.primary{border-color:var(--logo-teal);color:#0b6f72}
.link strong{color:#0b6f72}
.link>.icon,.link>.arrow{color:var(--logo-teal)}
.link:hover{background:#00a9ad14}
.link.primary{background:var(--logo-orange);border-color:var(--logo-orange);color:#fff;box-shadow:0 6px 16px #f66c2540}
.link.primary strong,.link.primary small,.link.primary>.icon,.link.primary>.arrow{color:#fff}
.link.primary:hover{background:#e25a14;transform:translateY(-2px)}
.section-label{color:var(--logo-orange)}
.action{background:var(--logo-pink)!important;color:#fff}
.action:hover{background:#d11a62!important}
.wa-float{background:var(--logo-teal);animation-name:wa-pulse2}
@keyframes wa-pulse2{0%{box-shadow:0 6px 18px #0003,0 0 0 0 #00a9ad99}70%{box-shadow:0 6px 18px #0003,0 0 0 16px #00a9ad00}100%{box-shadow:0 6px 18px #0003,0 0 0 0 #00a9ad00}}
/* Cesta */
.add{display:block;margin:10px 0 0;width:100%;border:1px solid var(--logo-teal);background:#fff;color:#0b6f72;border-radius:999px;padding:8px 14px;font-weight:700;font-size:13px}
.add:hover{background:var(--logo-teal);color:#fff}
.cakes .size{flex-wrap:wrap}.cakes .size>.add{flex:1 0 100%}
.cart-float{position:fixed;right:18px;bottom:88px;z-index:50;width:58px;height:58px;border-radius:50%;border:0;background:var(--logo-orange);color:#fff;display:grid;place-items:center;box-shadow:0 6px 18px #0003}
.cart-count{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;border-radius:11px;background:var(--logo-pink);color:#fff;font:700 12px/22px 'Segoe UI',sans-serif;text-align:center;padding:0 5px}
.cart-count[hidden]{display:none}
.modal-head{align-items:center}.cart-mini{position:relative;margin-left:auto;margin-right:8px;width:40px;height:40px;border-radius:50%;border:1px solid var(--logo-orange);background:#fff;color:var(--logo-orange);display:grid;place-items:center}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,30px);opacity:0;z-index:2147483647;background:#54353d;color:#fff;padding:10px 18px;border-radius:999px;font-size:13px;pointer-events:none;transition:.25s}
.toast.show{opacity:1;transform:translate(-50%,0)}
.cart-item{border:1px solid var(--line);border-radius:14px;padding:12px;margin:0 0 12px;display:grid;gap:8px;background:#fff9}
.cart-top{display:flex;justify-content:space-between;gap:10px}.cart-top h4{margin:0}.cart-price{margin:2px 0 0;color:var(--coral);font-weight:700}
.cart-remove{border:0;background:none;font-size:26px;line-height:1;color:var(--muted)}
.cart-qty{display:flex;align-items:center;gap:10px}.cart-qty span{flex:1;font-size:13px}.cart-qty button{width:34px;height:34px;border-radius:50%;border:1px solid var(--logo-teal);background:#fff;color:#0b6f72;font-size:18px}
.cart-item select,.cart-item input,.cart-item textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}
.cart-actions{display:grid;gap:10px;margin-top:14px}.ghost{border:1px solid var(--logo-teal);background:#fff;color:#0b6f72;border-radius:999px;padding:12px;font-weight:700}
.order-cart{background:#fff9;border:1px dashed var(--logo-teal);border-radius:12px;padding:10px 14px;margin-bottom:12px}.order-cart p{margin:2px 0}.order-cart .ghost{margin-top:8px;padding:6px 14px;font-size:13px}
@media(max-width:380px){.cart-float,.wa-float{right:12px}}
.toast{inset:auto auto 24px 50%;margin:0;border:0}.toast:not(.show){display:none}
.cart-float[hidden],.cart-mini[hidden]{display:none}
.cart-float:not([hidden]){animation:cart-pop .35s ease-out}
@keyframes cart-pop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
.cart-float{width:auto;height:54px;border-radius:999px;left:18px;right:auto;bottom:18px;padding:0 22px 0 18px;gap:10px;display:flex;align-items:center;background:var(--logo-teal);box-shadow:0 8px 22px #0004}
.cart-float[hidden]{display:none}
.cart-float .cart-label{font:800 14px/1 'Segoe UI',sans-serif;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.cart-float .cart-count{background:var(--logo-orange);top:-8px;right:-4px}
@media(max-width:380px){.cart-float{left:12px;padding:0 16px 0 14px}.cart-float .cart-label{font-size:13px}}
.toast{inset:auto auto 86px 50%}
.link[data-open="info"]{background:var(--logo-pink);border-color:var(--logo-pink);box-shadow:0 6px 16px #ed287640}
.link[data-open="info"] strong,.link[data-open="info"] small,.link[data-open="info"]>.icon,.link[data-open="info"]>.arrow{color:#fff}
.link[data-open="info"]:hover{background:#d11a62}
.cart-float{left:auto;right:18px}
.wa-float{right:auto;left:18px}
@media(max-width:380px){.cart-float{left:auto;right:12px}.wa-float{right:auto;left:12px}}
.wa-float{left:auto;right:18px;bottom:18px}
.cart-float{height:42px;padding:0 16px 0 13px;gap:8px;bottom:84px;right:18px;box-shadow:0 6px 16px #0003}
.cart-float svg{width:20px;height:20px}
.cart-float .cart-label{font-size:12px}
.cart-float .cart-count{min-width:20px;height:20px;line-height:20px;font-size:11px;top:-7px;right:-3px}
@media(max-width:380px){.wa-float{left:auto;right:12px}.cart-float{right:12px;padding:0 13px 0 11px}.cart-float .cart-label{font-size:11px}}
footer{margin-top:48px;padding-bottom:110px}
/* Responsividade: telas pequenas, notch e teclado */
dialog{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);max-width:calc(100vw - 24px)}
.wa-float{bottom:calc(18px + env(safe-area-inset-bottom))}
.cart-float{bottom:calc(84px + env(safe-area-inset-bottom))}
@media(max-width:600px){input,select,textarea{font-size:16px}.modal-head h2{font-size:21px}.cakes .script{font-size:21px}.cakes .hero .script{font-size:23px}.spin{height:176px}.spin img{width:112px;height:150px;margin-left:-56px}}
@media(max-width:340px){.cakes .inside b{flex-basis:66px;font-size:20px}.cart-float .cart-label{font-size:10.5px}.size{gap:8px}.price strong{font-size:18px}}
.link.primary .hours{display:block;margin-top:6px;padding-top:6px;border-top:1px solid #fff5;font-weight:700;font-size:11.5px;letter-spacing:.02em}
