:root{--paper:#fff9ee;--ink:#49241f;--muted:#72594b;--gold:#8a611c;--line:#e2ceb0;--soft:#f4e7d1;--brand:#8f101b;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(3.4rem,6.1vw,6.4rem)}h2{font-size:clamp(2.2rem,3.5vw,3.7rem);margin-bottom:24px}h3{font-size:1.65rem;letter-spacing:-.02em}p{margin-bottom:20px}svg{width:24px;height:24px}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.announcement{background:var(--ink);color:var(--paper);text-align:center;font-size:11px;letter-spacing:1.3px;padding:10px 20px}.announcement span{margin-left:30px;opacity:.9}.site-header{height:122px;display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--line)}.brand{margin-right:auto;line-height:0}.brand img{width:215px}.site-header nav{display:flex;gap:28px;font-size:12px}.site-header nav a{text-decoration:none}.site-header nav a:hover{text-decoration:underline}.header-tools{display:flex;gap:12px}.icon-link{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;text-decoration:none}.icon-link:hover{background:var(--soft);border-color:var(--gold)}.menu-toggle{display:none}.skip-link{position:absolute;top:-100px;left:12px;z-index:1000;background:white;padding:10px}.skip-link:focus{top:10px}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px;padding-block:64px 76px;min-height:700px}.eyebrow{text-transform:uppercase;letter-spacing:2.2px;font-size:10px;font-weight:600;line-height:1.8;margin-bottom:26px;color:var(--muted)}.tiny-star{color:var(--gold);font-size:20px;vertical-align:middle;margin-right:6px}.hero h1{max-width:630px;margin-bottom:30px}.hero-description{max-width:380px;font-size:16px;color:var(--muted);line-height:1.8}.button,button[type=submit],input[type=submit],.woocommerce a.button,.woocommerce button.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:52px;padding:14px 25px;background:var(--ink);color:#fff;border:1px solid var(--ink);font:500 13px/1.5 var(--sans);text-decoration:none;cursor:pointer;border-radius:2px;transition:background .2s}.button:hover,button[type=submit]:hover{background:#6f0c14}.button:disabled{opacity:.5;cursor:not-allowed}.hero-note{margin:16px 0 0;font-size:12px}.hero-note span{color:var(--muted)}.hero-art{position:relative;padding:38px 0 25px;isolation:isolate}.hero-art>img{width:100%;border-radius:50%;animation:float 9s ease-in-out infinite}.orbit-label{display:block;text-align:center;font-size:9px;letter-spacing:3.2px;margin-bottom:8px;color:var(--gold)}.art-caption{display:block;font-family:var(--serif);font-style:italic;text-align:center;color:var(--muted);font-size:16px;margin-top:22px}.promise-bar{border-block:1px solid var(--line)}.promise-bar .wrap{display:flex;justify-content:space-around;gap:20px;padding:20px 0;font-size:12px;letter-spacing:.5px}.section{padding-block:100px}.section-heading{text-align:center;margin:0 auto 58px;max-width:800px}.section-heading>p:last-child{color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:70px;max-width:1040px;margin:auto}.step-number{font-family:var(--serif);color:var(--gold);font-size:20px;display:block;border-top:1px solid var(--line);padding-top:20px;margin-bottom:20px}.steps h3{font-size:24px}.steps p{font-size:14px;color:var(--muted)}.gifts-section{background:#f6ecd9}.gift-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:32px;max-width:1120px;margin:auto}.gift-card{background:var(--paper)}.gift-image{display:block;background:#e9e3d5;overflow:hidden}.gift-image img{width:100%;aspect-ratio:1;object-fit:cover;display:block;transition:transform .6s}.gift-image:hover img{transform:scale(1.035)}.gift-text{padding:28px}.gift-text .eyebrow{font-size:9px;margin-bottom:14px}.gift-text h3 a{text-decoration:none}.gift-text p{font-size:14px;color:var(--muted)}.gift-text .gift-price{color:var(--ink);font-size:18px}.gift-price small{font-size:11px}.text-link{font-size:13px;border-bottom:1px solid var(--gold);padding-bottom:6px;text-decoration:none;display:inline-flex;gap:36px}.coming-soon{text-align:center;padding:50px 24px;grid-column:1/-1}.coming-soon>span{font-size:45px;color:var(--gold)}.personal-section{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.personal-section>div:last-child>p:not(.eyebrow){color:var(--muted);max-width:420px}.letter-art{background:#f2ecde;border:1px solid #d7cbb4;padding:55px 60px;transform:rotate(-3deg);position:relative;box-shadow:15px 20px 0 #eeede3}.letter-art>p{font-family:var(--serif);font-size:clamp(2rem,4vw,4rem);line-height:1.25;margin:20px 0}.letter-art em{color:var(--gold)}.letter-seal{display:flex;background:#806036;color:#fff5df;width:60px;height:60px;border-radius:50%;align-items:center;justify-content:center;font:italic 25px var(--serif);margin-left:auto;box-shadow:inset 0 0 0 5px #ba985f}.testimonial{background:var(--ink);color:var(--paper);padding:80px 0;text-align:center}.testimonial .eyebrow{color:#d7c399}.testimonial blockquote{font:32px/1.5 var(--serif);max-width:800px;margin:auto}.testimonial cite{font:12px var(--sans);display:block;margin-top:26px}.social-section{text-align:center;border-bottom:1px solid var(--line)}.icon-row{display:flex;gap:16px;align-items:center}.social-section .icon-row{justify-content:center}.social-link{display:flex;align-items:center;gap:10px;font-size:13px}.faq-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.faq-section>div>p:not(.eyebrow){font-size:14px;color:var(--muted)}details{border-bottom:1px solid var(--line);padding:22px 0}details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;font-size:15px;list-style:none;position:relative;padding-right:30px}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;font-size:20px;top:-5px}details[open] summary:after{content:'−'}details p{font-size:14px;color:var(--muted);padding-top:20px;margin-bottom:0}.site-footer{background:#eeeee4;border-top:1px solid var(--line);padding:60px 0 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:45px}.footer-top img{width:210px}.footer-top p{font-size:12px;color:var(--muted);margin:20px 0 0}.footer-contact p{margin:0 0 15px}.footer-bottom{border-top:1px solid #ccd1c4;padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px}.footer-bottom nav,.footer-bottom ul{display:flex;list-style:none;gap:18px;margin:0;padding:0;flex-wrap:wrap}.postal-sign{font-family:var(--serif);font-style:italic;font-size:14px}.editorial-page,.cm-commerce{padding-block:65px 90px;min-height:50vh}.editorial-page h1,.cm-commerce h1{font-size:clamp(2.8rem,4.5vw,4.5rem)}.editorial-page article{max-width:1100px;margin:auto}.editorial-page p{max-width:75ch}.woocommerce-breadcrumb{font-size:12px;margin:0 0 35px;color:var(--muted)}.woocommerce div.product{display:flow-root}.woocommerce div.product .woocommerce-product-gallery{width:46%;float:left;margin:0 0 40px}.woocommerce-product-gallery__wrapper{margin:0}.woocommerce div.product .summary{width:47%;float:right}.woocommerce .price{font-size:1.6rem}.woocommerce .woocommerce-tabs,.woocommerce .related{clear:both;padding-top:40px}.woocommerce .tabs{list-style:none;display:flex;gap:25px;padding:0;border-bottom:1px solid var(--line);margin-bottom:30px}.woocommerce .tabs li{padding:15px 0}.woocommerce .tabs a{text-decoration:none}.woocommerce .tabs .active{border-bottom:2px solid var(--ink)}.woocommerce .product_meta{font-size:12px;color:var(--muted);margin-top:25px}.woocommerce .product_meta span{display:block}.woocommerce ul.products{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.woocommerce ul.products li{min-width:0}.woocommerce ul.products img{width:100%;aspect-ratio:1;object-fit:cover}.woocommerce ul.products a{text-decoration:none}.woocommerce ul.products h2{font-size:24px;margin:15px 0}.woocommerce .onsale{background:var(--gold);color:#fff;padding:6px 12px;font-size:12px}.woocommerce form .form-row{margin:0 0 20px}.woocommerce form label{display:block;font-size:14px;margin-bottom:7px}.woocommerce form input.input-text,.woocommerce form textarea,.woocommerce form select{width:100%;padding:12px;background:#fffdf7;border:1px solid #aab4a8;color:var(--ink);border-radius:2px;min-height:46px}.woocommerce form input[type=checkbox]{width:18px;height:18px;vertical-align:middle}.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:48%;float:left}.woocommerce form .form-row-last{float:right}.woocommerce form .form-row-wide{clear:both}.woocommerce form .required{color:#875032}.woocommerce .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:45px}.woocommerce #order_review_heading{clear:both;padding-top:35px}.woocommerce table{width:100%;border-collapse:collapse;margin:25px 0;text-align:left;font-size:14px}.woocommerce td,.woocommerce th{padding:15px 12px;border-bottom:1px solid var(--line)}.woocommerce th{font-weight:600}.woocommerce .product-thumbnail img{width:70px}.woocommerce ul.payment_methods,.woocommerce ul.woocommerce-shipping-methods{list-style:none;padding:0}.woocommerce .payment_box{background:var(--soft);padding:20px;font-size:14px}.woocommerce .woocommerce-info,.woocommerce .woocommerce-message,.woocommerce .woocommerce-error{background:var(--soft);border-left:3px solid var(--gold);padding:20px 25px;list-style:none;margin:0 0 30px}.woocommerce .woocommerce-error{border-color:#a64432}.woocommerce .woocommerce-MyAccount-navigation{float:left;width:23%}.woocommerce .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.woocommerce .woocommerce-MyAccount-navigation li{padding:12px 0;border-bottom:1px solid var(--line)}.woocommerce .woocommerce-MyAccount-content{float:right;width:72%;overflow-x:auto}.woocommerce:after{content:'';display:block;clear:both}.woocommerce .quantity input{width:70px;padding:10px}.woocommerce .cart-collaterals{max-width:600px;margin-left:auto}.woocommerce .cart_totals h2{font-size:2rem}.woocommerce .woocommerce-order-overview{list-style:none;padding:20px;background:var(--soft)}.woocommerce .woocommerce-order-overview li{padding:8px 0}.woocommerce .screen-reader-text,.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}.woocommerce .select2-container .select2-selection--single{height:46px;border-radius:2px;padding-top:8px}.woocommerce .cm-form .cm-check{display:flex}.woocommerce .cm-form input[type=checkbox]{flex-shrink:0}.woocommerce .cm-form legend{font-family:var(--serif)}.woocommerce .woocommerce-notices-wrapper{clear:both}.woocommerce .woocommerce-review__published-date{font-size:12px}.woocommerce input[name=coupon_code]{width:auto!important}.woocommerce .woocommerce-form-coupon-toggle{font-size:14px}.woocommerce .woocommerce-privacy-policy-text{font-size:13px}.woocommerce .wc_payment_method>label{display:inline}.woocommerce .wc_payment_method img{max-height:28px;width:auto;vertical-align:middle}.cm-season-pascoa{--gold:#89784f}.cm-season-aniversario{--gold:#a96c58}@keyframes float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-7px) rotate(1deg)}}
@media(min-width:1000px){.gift-grid:has(>.gift-card:only-child){max-width:1000px}.gift-card:only-child{display:grid;grid-template-columns:1fr 1fr;align-items:center}.gift-card:only-child .gift-text{padding:50px}.gift-card:only-child h3{font-size:38px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.site-header{gap:20px;height:100px}.site-header nav{gap:18px;font-size:11px}.brand img{width:180px}.hero{gap:20px;min-height:580px;padding-block:45px}.hero h1{font-size:4.4rem}.personal-section{gap:60px}.letter-art{padding:35px}.steps{gap:35px}.faq-section{gap:45px}.footer-bottom{flex-wrap:wrap}}
@media(max-width:720px){.announcement{font-size:9px;letter-spacing:.5px}.announcement span{display:none}.wrap{width:calc(100% - 40px)}.site-header{height:auto;min-height:92px;gap:10px;flex-wrap:wrap;padding-block:16px;position:relative}.brand img{width:156px}.header-tools{gap:5px}.header-tools .icon-link{width:37px;height:37px}.menu-toggle{display:block;background:transparent;border:0;color:var(--ink);padding:10px;font-size:11px;cursor:pointer}.menu-toggle span{margin-left:5px}.site-header nav{width:100%;order:3;justify-content:space-between;padding:12px 0 0;font-size:11px}.cm-js .site-header nav{display:none}.cm-js .site-header nav.is-open{display:flex}.hero{grid-template-columns:1fr;text-align:center;padding-top:42px;padding-bottom:35px;gap:5px}.hero h1{font-size:clamp(3.2rem,11.5vw,4.8rem);max-width:550px;margin-inline:auto}.hero .eyebrow{font-size:8px;letter-spacing:1.6px}.hero-description{margin-inline:auto;font-size:14px;max-width:340px}.hero-art{max-width:480px;margin:auto;padding-top:30px}.hero-art img{width:88%}.orbit-label{font-size:7px}.art-caption{font-size:13px}.promise-bar .wrap{gap:12px;padding:15px 0;font-size:9px;line-height:1.7;text-align:center}.section{padding-block:65px}.section-heading{margin-bottom:35px}.section-heading h2{font-size:2.45rem}.eyebrow{font-size:9px;margin-bottom:18px}.steps{grid-template-columns:1fr;gap:25px}.steps article{position:relative;padding-left:55px}.step-number{position:absolute;left:0;top:0;border:0;padding:0;font-size:23px}.steps h3{margin-bottom:12px}.steps p{margin-bottom:0}.gift-grid{grid-template-columns:1fr}.gift-text{padding:25px}.personal-section{grid-template-columns:1fr;gap:55px}.letter-art{margin-inline:10px}.letter-art>p{font-size:42px}.personal-section h2{font-size:2.7rem}.personal-section>div:last-child>p:not(.eyebrow){font-size:14px}.faq-section{grid-template-columns:1fr;gap:20px}.faq-section h2{font-size:2.5rem}.footer-top{align-items:flex-start;gap:35px;flex-direction:column}.footer-bottom{align-items:flex-start;flex-direction:column;font-size:10px}.site-footer{padding-top:40px}.footer-top img{width:175px}.social-link{font-size:12px}.woocommerce div.product .woocommerce-product-gallery,.woocommerce div.product .summary{float:none;width:100%}.woocommerce .col2-set{grid-template-columns:1fr;gap:20px}.woocommerce ul.products{grid-template-columns:1fr 1fr;gap:20px}.woocommerce ul.products h2{font-size:20px}.woocommerce .woocommerce-MyAccount-navigation,.woocommerce .woocommerce-MyAccount-content{width:100%;float:none}.woocommerce .shop_table_responsive{font-size:12px}.woocommerce td,.woocommerce th{padding:12px 6px}.woocommerce .product-thumbnail{display:none}.woocommerce .tabs{font-size:13px}.editorial-page,.cm-commerce{padding-block:40px 60px}.woocommerce .cm-form{padding:18px}.woocommerce input[name=coupon_code]{max-width:100%}.woocommerce .actions .button{margin-top:10px}.woocommerce .woocommerce-order-downloads{overflow-x:auto}.woocommerce .form-row-first,.woocommerce .form-row-last{min-width:100%}.woocommerce .woocommerce-form-coupon button{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.site-header,.site-footer,.announcement,.button{display:none}.wrap{width:100%}body{background:#fff;color:#000}.cm-sheet{break-inside:avoid}}

.payment-symbols{display:flex;gap:12px;align-items:center}.payment-symbol{display:flex;align-items:center;color:var(--muted)}.payment-symbol svg{width:30px;height:24px}
/* CTT's legacy stylesheet sets the entire page background to white !important. */
body[class*="cm-season-"]{background-color:var(--paper)!important}

.woocommerce-product-gallery{opacity:1!important}

/* Identidade Correio Mágico: imagens originais, vermelho, dourado e creme. */
.announcement{background:var(--brand);color:#fff9ee}
.site-header{min-height:142px;height:auto;padding-block:18px}
.brand{flex-shrink:0}.brand img{width:330px;display:block}
.hero{background:radial-gradient(ellipse at 80% 40%,#f3dfb6 0,transparent 57%)}
.hero-art>img{border-radius:0;animation:none;filter:drop-shadow(0 14px 20px #7138171a)}
.button,button[type=submit],input[type=submit],.woocommerce a.button,.woocommerce button.button{background:var(--brand);border-color:var(--brand);color:#fff}
.button:hover,button[type=submit]:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:#6f0c14;border-color:#6f0c14}
.site-footer{background:#f4e7d1}.footer-top img{width:320px;height:auto}.footer-bottom{border-color:var(--line)}
.testimonial{background:var(--brand)}
.cm-builder .cm-kit,.cm-builder .cm-child,.cm-builder .cm-remove{background:#fffdf7;color:var(--ink);border-color:var(--line)}
.cm-builder .cm-kit[aria-pressed=true]{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand)}
.cm-builder .cm-child-title,.cm-builder .cm-field input,.cm-builder .cm-field textarea,.cm-builder .cm-field select{color:var(--ink)}
.cm-builder .cm-field input,.cm-builder .cm-field textarea,.cm-builder .cm-field select{border-color:#aa8a6b}
.cm-builder .cm-review-panel{background:var(--soft)}
.cm-builder :focus-visible{outline-color:var(--gold)}
@media(max-width:1100px){.brand img{width:260px}.site-header{gap:20px}.site-header nav{gap:16px}}
@media(max-width:720px){.site-header{padding-block:20px;gap:8px;min-height:0}.brand{width:100%;margin:0 0 8px}.brand img{width:min(100%,340px);margin:auto}.menu-toggle{margin-right:auto}.header-tools .icon-link{width:42px;height:42px}.site-header nav{order:3}.hero{padding-top:32px}.hero-art{max-width:380px}.hero-art img{width:100%}.footer-top img{width:min(100%,300px)}}

/* Three clear groups, matching the supplied footer structure and the brand palette. */
.site-footer.cm-footer-columns{background:#760d17;color:#fff9ee;padding:28px 0 0}
.cm-footer-columns .footer-grid{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:32px;padding-bottom:22px}
.cm-footer-columns h2{font:700 15px/1.4 var(--sans);letter-spacing:.04em;text-transform:uppercase;margin:0 0 10px;color:#fff9ee}
.cm-footer-columns ul{list-style:none;margin:0;padding:0}.cm-footer-columns li{margin:0 0 2px;line-height:1.5}
.cm-footer-columns a{font-size:14px;text-decoration:none}.cm-footer-columns li a{display:inline-block;min-height:28px;padding-block:3px}.cm-footer-columns a:hover{text-decoration:underline}
.cm-footer-columns .icon-row{margin-top:10px;flex-wrap:wrap}.cm-footer-columns .icon-link{width:38px;height:38px;border-color:#b67379}.cm-footer-columns .icon-link:hover{background:#5d0a12;border-color:#f4d390}
.cm-footer-columns .footer-bottom{border-top:1px solid #b67379;padding-block:12px;display:flex;justify-content:space-between;gap:16px;color:#fff9ee;font-size:12px}
.cm-footer-columns .postal-sign{font:italic 14px/1.5 var(--serif)}.cm-footer-columns a:focus-visible{outline-color:#f4d390}
@media(max-width:900px){.cm-footer-columns .footer-grid{gap:35px}}
@media(max-width:600px){.site-footer.cm-footer-columns{padding-top:24px}.cm-footer-columns .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-bottom:20px}.cm-footer-columns .footer-grid>:last-child{grid-column:1/-1}.cm-footer-columns .footer-bottom{align-items:flex-start;flex-direction:column;gap:6px}.cm-footer-columns a{overflow-wrap:anywhere}}

.cm-search-page{max-width:1000px}.cm-search-page h1{font-size:clamp(2.3rem,5vw,4rem)}
.cm-search-form{margin:30px 0 45px}.cm-search-form label{display:block;margin-bottom:8px}.cm-search-form>div{display:flex;gap:12px}
.cm-search-form input{flex:1;min-width:0;padding:14px;border:1px solid var(--gold);border-radius:2px;background:#fffdf8;color:var(--ink)}
.cm-search-page h2{font-size:1.7rem}.cm-search-results article{padding:24px 0;border-bottom:1px solid var(--line)}.cm-search-results h3{font-size:1.5rem;margin-bottom:12px}.cm-search-results p{margin:0;color:var(--muted)}
@media(max-width:480px){.cm-search-form>div{flex-direction:column}.cm-search-form button{align-self:flex-start}}

/* Institutional pages use the full content width, with the shared side gutters. */
.cm-content-page article{max-width:none;margin:0}.cm-content-page p{max-width:none}

/* Reading pages: a compact hierarchy distinct from the homepage's display headings. */
body:not(.woocommerce-page) .cm-content-page article h1{font-size:clamp(2rem,3.2vw,2.75rem);line-height:1.18;margin-bottom:1.75rem;letter-spacing:-.025em}
body:not(.woocommerce-page) .cm-content-page article h2{font-size:clamp(1.5rem,2.2vw,1.875rem);line-height:1.25;margin-top:2rem;margin-bottom:1rem;letter-spacing:-.02em}
body:not(.woocommerce-page) .cm-content-page article h3{font-size:clamp(1.25rem,1.6vw,1.375rem);line-height:1.3;margin-top:1.5rem;margin-bottom:.75rem;letter-spacing:-.01em}
body:not(.woocommerce-page) .cm-content-page article :is(h1,h2,h3){overflow-wrap:anywhere}

.cm-content-page .cm-table-group{max-width:100%;min-width:0;margin-block:1.5rem}
.cm-content-page .cm-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.cm-content-page .cm-table-scroll table{width:100%;min-width:38rem;border-collapse:collapse;text-align:left}
.cm-content-page .cm-table-scroll th,.cm-content-page .cm-table-scroll td{padding:.75rem;border-bottom:1px solid var(--line);vertical-align:top}
.cm-content-page .cm-table-scroll:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.cm-content-page .cm-table-hint{font-size:.875rem;color:var(--muted);margin-bottom:.5rem}
.cm-content-page .cm-table-hint[hidden]{display:none}

/* Página inicial: títulos e intervalos mais compactos. */
.home #conteudo .hero{min-height:0;padding-block:40px;gap:32px}
.home #conteudo .hero h1{font-size:clamp(2.25rem,4.2vw,3.75rem);line-height:1.12;margin-bottom:20px}
.home #conteudo .hero-art{width:100%;max-width:400px;justify-self:center;padding:12px 0}
.home #conteudo .art-caption{margin-top:12px}
.home #conteudo .section{padding-block:60px}
.home #conteudo h2{font-size:clamp(1.75rem,2.6vw,2.25rem);line-height:1.2;margin-bottom:18px}
.home #conteudo .section-heading{margin-bottom:32px}
.home #conteudo .eyebrow{margin-bottom:16px}
.home #conteudo .personal-section{gap:56px}
.home #conteudo .letter-art{padding:32px}
.home #conteudo .letter-art>p{font-size:clamp(1.75rem,2.5vw,2.25rem)}
.home #conteudo .gift-text h3{font-size:1.875rem}
.home #conteudo .testimonial{padding-block:48px}
.home #conteudo .testimonial blockquote{font-size:1.5rem}
.home #conteudo .faq-section{gap:48px}
@media(max-width:720px){
.home #conteudo .hero{padding-block:28px;gap:16px}
.home #conteudo .hero h1{font-size:clamp(2.25rem,8vw,2.75rem)}
.home #conteudo .hero-art{max-width:260px;padding:8px 0}
.home #conteudo .section{padding-block:38px}
.home #conteudo h2{font-size:1.75rem}
.home #conteudo .section-heading{margin-bottom:24px}
.home #conteudo .personal-section{gap:32px}
.home #conteudo .letter-art{padding:24px}
.home #conteudo .gift-text h3{font-size:1.5rem}
.home #conteudo .testimonial{padding-block:36px}
.home #conteudo .faq-section{gap:20px}
}

/* Account forms: password visibility control and vertically stacked recovery. */
.woocommerce form .password-input{display:flex;flex-wrap:wrap;gap:8px;align-items:center;width:100%}
.woocommerce form .password-input input.input-text{flex:1 1 220px;min-width:0;width:auto}
.woocommerce form .show-password-input{position:static;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:10px 12px;border:1px solid var(--line);border-radius:2px;background:var(--soft);color:var(--ink);font:500 12px/1.4 var(--sans);cursor:pointer}
.woocommerce form .show-password-input::after{content:attr(aria-label);font-family:inherit}
.woocommerce form.lost_reset_password{max-width:680px}
.woocommerce form.lost_reset_password .form-row{float:none;width:100%;clear:both;margin-bottom:20px}
.woocommerce form.lost_reset_password .clear{clear:both}
.woocommerce-account .cm-commerce h1{font-size:clamp(2rem,3.2vw,2.75rem)}
.woocommerce-account .woocommerce h2{font-size:clamp(1.6rem,2.4vw,2rem)}

.cm-contact-item{margin-block:14px}
.cm-contact-reveal[hidden]{display:none}
.cm-contact-reveal button{min-height:44px;padding:10px 16px;border:1px solid var(--line);background:var(--soft);color:var(--ink);cursor:pointer;border-radius:2px}
.cm-contact-links{display:block;margin-top:8px;overflow-wrap:anywhere}

/* Personalização: distinguir campos obrigatórios e opcionais. */
.cm-builder .cm-field :is(input,textarea,select):required{background-color:#fff}
.cm-builder .cm-field :is(input,textarea,select):optional{background-color:var(--paper)}

/* Galeria: miniaturas em linha, com e sem o slider do WooCommerce. */
.woocommerce-product-gallery>.woocommerce-product-gallery__wrapper{display:flex;flex-wrap:wrap;gap:8px}
.woocommerce-product-gallery>.woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image:first-child{flex:0 0 100%}
.woocommerce-product-gallery>.woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image:not(:first-child){flex:0 0 min(100px,calc((100% - 24px)/4));min-width:0}
.woocommerce-product-gallery .woocommerce-product-gallery__image img{display:block;max-width:100%;height:auto}
.woocommerce-product-gallery>.woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image:first-child img{width:100%}
.woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:8px;overflow-x:auto;list-style:none;margin:8px 0 0;padding:0}
.woocommerce-product-gallery .flex-control-thumbs li{flex:0 0 min(100px,calc((100% - 24px)/4));float:none;margin:0;padding:0}
.woocommerce-product-gallery .flex-control-thumbs img{display:block;width:100%;height:auto;cursor:pointer;opacity:.65}
.woocommerce-product-gallery .flex-control-thumbs img.flex-active{opacity:1;outline:2px solid var(--brand);outline-offset:-2px}

/* Destaque do presente: imagem sem ampliação por recorte e texto legível. */
.home #presentes .gift-image{aspect-ratio:16/9;min-width:0;align-self:center}
.home #presentes .gift-image img{width:100%;height:100%;aspect-ratio:16/9;object-fit:contain}
.home #presentes .gift-image:hover img{transform:none}
.home #conteudo #presentes .gift-text h3{font-size:clamp(1.875rem,3vw,2.25rem);line-height:1.2}
.home #presentes .gift-text p{font-size:18px;line-height:1.65}
.home #presentes .gift-text .eyebrow{font-size:12px;line-height:1.6;letter-spacing:.12em}
.home #presentes .gift-text .gift-price{font-size:24px}
.home #presentes .gift-price small{font-size:14px}
.home #presentes .gift-text .text-link{font-size:16px}

/* Destaque lado a lado: imagem preenche a altura do texto com recorte proporcional. */
@media(min-width:1000px){
.home #presentes .gift-card:only-child{align-items:stretch}
.home #presentes .gift-card:only-child .gift-image{position:relative;align-self:stretch;aspect-ratio:auto;min-height:0}
.home #presentes .gift-card:only-child .gift-image img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
}

/* Página inicial: escala tipográfica comum ao destaque do produto. */
.home #conteudo{font-size:18px;line-height:1.65}
.home #conteudo :is(.hero-description,.section-heading>p:not(.eyebrow),.steps p,.personal-section>div:last-child>p:not(.eyebrow),.faq-section>div>p:not(.eyebrow),.faq-list p){font-size:18px;line-height:1.65}
.home #conteudo h2{font-size:clamp(1.875rem,3vw,2.25rem);line-height:1.2}
.home #conteudo .steps h3{font-size:28px;line-height:1.25}
.home #conteudo .eyebrow{font-size:12px;line-height:1.6;letter-spacing:.12em}
.home #conteudo :is(.button,.text-link,.social-link){font-size:16px}
.home #conteudo :is(.hero-note,.art-caption,.testimonial cite){font-size:16px;line-height:1.6}
.home #conteudo .orbit-label{font-size:12px;letter-spacing:.12em}
.home #conteudo .promise-bar .wrap{font-size:16px;flex-wrap:wrap}
.home #conteudo .faq-list summary{font-size:18px;line-height:1.5}
.home #conteudo .testimonial blockquote{font-size:28px;line-height:1.5}
.home .announcement{font-size:14px;letter-spacing:.06em}
.home .site-header nav,.home .menu-toggle{font-size:16px}
.home .site-header nav{flex-wrap:wrap}
.home .cm-footer-columns a{font-size:16px}
.home .cm-footer-columns h2{font-size:16px}
.home .cm-footer-columns :is(.footer-bottom,.postal-sign){font-size:14px}
@media(max-width:720px){
.home .site-header nav{justify-content:flex-start;gap:12px 20px}
.home #conteudo .social-section .icon-row{flex-wrap:wrap}
.home #conteudo .promise-bar .wrap{gap:12px 20px}
}

/* Carimbos da página inicial: texto real e contorno postal. */
.home #conteudo .promise-bar .cm-stamps{display:flex;justify-content:center;align-items:stretch;gap:28px;padding-block:28px;flex-wrap:wrap}
.home #conteudo .cm-stamp{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex:0 1 280px;min-height:128px;padding:18px 24px;border:2px dashed var(--gold);outline:1px solid var(--line);outline-offset:5px;border-radius:12px;background:var(--paper);color:var(--ink);font:600 18px/1.4 var(--sans);text-align:center;letter-spacing:0}
.home #conteudo .cm-stamp>span{font-size:28px;line-height:1;color:var(--gold)}
.home #conteudo .orbit-label{max-width:36ch;margin-inline:auto;line-height:1.6}
@media(max-width:720px){.home #conteudo .promise-bar .cm-stamps{gap:22px}.home #conteudo .cm-stamp{flex-basis:100%;max-width:340px}}

/* Selos da biblioteca multimédia, sem as molduras dos carimbos anteriores. */
.home #conteudo .promise-bar .cm-stamps-images{gap:32px;align-items:center}
.home #conteudo .cm-stamp-image-item{flex:0 1 260px;min-width:0;text-align:center}
.home #conteudo .cm-stamp-image-item img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
@media(max-width:720px){.home #conteudo .cm-stamp-image-item{flex-basis:220px;max-width:100%}}

.home #conteudo #presentes .gift-text .text-link{font-size:20px;font-weight:700}

.home #conteudo .promise-bar .cm-stamps-images{justify-content:center;gap:clamp(32px,8vw,110px)}
.home #conteudo .cm-stamp-image-item{flex:0 1 182px}
@media(max-width:720px){.home #conteudo .promise-bar .cm-stamps-images{gap:16px}.home #conteudo .cm-stamp-image-item{flex-basis:154px}}

/* Checkout: seleção, logótipo e nome, sem alterar os campos dos gateways. */
.woocommerce-checkout #payment .wc_payment_method{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px 12px;align-items:start;margin-bottom:18px}
.woocommerce-checkout #payment .wc_payment_method>input.input-radio{margin:8px 0 0;width:18px;height:18px}
.woocommerce-checkout #payment .wc_payment_method>label{display:flex;align-items:center;gap:12px;margin:0;min-height:34px;font-size:16px;line-height:1.4;cursor:pointer}
.woocommerce-checkout #payment .cm-payment-icons{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}
.woocommerce-checkout #payment .cm-payment-icons img{display:block;float:none;width:auto;max-width:70px;height:28px;max-height:28px;margin:0;object-fit:contain}
.woocommerce-checkout #payment .cm-payment-title{min-width:0;overflow-wrap:anywhere}
.woocommerce-checkout #payment .wc_payment_method>.payment_box{grid-column:1/-1;margin:0}

.cm-footer-services { padding-block: 20px; border-top: 1px solid currentColor; }
.cm-footer-services p { margin: 0 0 8px; font-size: 14px; line-height: 1.6; }
.cm-purchase-services { margin: 0 0 24px; }
.cm-purchase-services p { max-width: 80ch; line-height: 1.6; }

/* One reading and heading scale, based on the homepage. */
:root{--cm-body-size:18px;--cm-title-size:clamp(2.25rem,4.2vw,3.75rem);--cm-section-size:clamp(1.875rem,3vw,2.25rem);--cm-subtitle-size:28px}
body{font-size:var(--cm-body-size);line-height:1.65}
#conteudo{font-size:var(--cm-body-size);line-height:1.65}
body #conteudo :is(h1,.product_title),body:not(.woocommerce-page) .cm-content-page article h1{font-size:var(--cm-title-size);line-height:1.12}
body #conteudo h2,body:not(.woocommerce-page) .cm-content-page article h2{font-size:var(--cm-section-size);line-height:1.2}
body #conteudo h3,body:not(.woocommerce-page) .cm-content-page article h3{font-size:var(--cm-subtitle-size);line-height:1.25}
body #conteudo :is(p,li,td,th,summary,.woocommerce-breadcrumb){font-size:var(--cm-body-size);line-height:1.65}
body #conteudo :is(form label,input,textarea,select,.button,button[type=submit],.woocommerce-privacy-policy-text){font-size:16px;line-height:1.5}
body #conteudo .eyebrow{font-size:12px;line-height:1.6}
body #conteudo :is(small,.product_meta,.cm-privacy-note){font-size:14px;line-height:1.6}
body #conteudo .gift-price{font-size:24px}
body #conteudo .cm-total{font-size:22px}
.site-header nav,.menu-toggle{font-size:16px}
.announcement{font-size:14px;letter-spacing:.06em}
.cm-footer-columns a,.cm-footer-columns h2{font-size:16px}
.cm-footer-columns :is(.footer-bottom,.postal-sign){font-size:14px}
@media(max-width:720px){:root{--cm-title-size:clamp(2.25rem,8vw,2.75rem)}}
/* Compact MB WAY fields, including the payment plugin's small-container rules. */
.woocommerce-checkout #payment #mbway_ifthen_for_woocommerce_phone_field_container{display:flex;flex-direction:row;flex-wrap:nowrap;gap:10px;justify-content:flex-start;max-width:100%}
.woocommerce-checkout #payment #mbway_ifthen_for_woocommerce_phone_field_container_country_code{width:90px;min-width:90px;flex:0 0 90px}
.woocommerce-checkout #payment #mbway_ifthen_for_woocommerce_phone_field_container_country_code .select2-container{width:90px!important;max-width:90px}
.woocommerce-checkout #payment #mbway_ifthen_for_woocommerce_country_code{padding:10px 8px;min-height:48px}
.woocommerce-checkout #payment #mbway_ifthen_for_woocommerce_phone{width:calc(9ch + 26px);min-width:0;flex:0 1 calc(9ch + 26px);padding:10px 12px;font-variant-numeric:tabular-nums;min-height:48px}
.woocommerce-checkout #payment #mbway_ifthen_for_woocommerce_phone_field_container_country_code .select2-selection--single{height:48px;padding-top:9px}
