/* COSMELINA / Everyday Rituals — original storefront system, October 2026. */
:root{--paper:#fdfcf9;--ink:#2f3d32;--muted:#6f756b;--olive:#465d43;--sage:#e8eadf;--line:#dedfd5;--rose:#ede0d8;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--bs-primary:#465d43;--bs-link-color:#465d43;--bs-link-hover-color:#273c26}
*{box-sizing:border-box}html{scroll-padding-top:160px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:12.00325px;line-height:1.6;margin:0}a{color:var(--ink);text-decoration:none}a:hover{color:var(--olive)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}img{max-width:100%}h1,h2,h3,h4,h5,h6{color:var(--ink);text-shadow:none}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:36.00975px}h2{font-size:30.8655px}em{font-weight:400}a:focus-visible,button:focus-visible{outline:2px solid var(--olive);outline-offset:5px}.container{max-width:1320px;padding-left:36px;padding-right:36px}.skip-link{position:fixed;top:-80px;left:16px;z-index:9999;padding:12px 20px;background:var(--ink);color:white}.skip-link:focus{top:12px;color:white}#alert{z-index:1060}.preview-note{text-align:center;background:#eee9e1;color:#5b574c;font-size:8.57375px;letter-spacing:.03em;padding:3px 12px}.announcement{background:var(--olive);color:#fff;text-align:center;font-size:9.431125px;letter-spacing:.08em;padding:9px 10px}.announcement span{margin:0 25px;color:#e7ddc7}.shop-header{position:sticky;top:0;background:rgba(253,252,249,.98);z-index:1020;border-bottom:1px solid var(--line);transition:box-shadow .2s}.shop-header.scrolled{box-shadow:0 4px 16px #2f3d3209}.masthead{height:105px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:16px}.header-intro{display:flex;gap:12px;align-items:center;font-size:9.431125px;color:var(--muted)}.tiny-leaf{font-size:24.0065px;color:var(--olive)}.wordmark{font-family:var(--serif);font-size:41.154px;line-height:1;letter-spacing:-3px;text-align:center;font-weight:400;white-space:nowrap;display:inline-block}.wordmark small{display:block;font-family:var(--sans);font-size:6.859px;letter-spacing:2.4px;line-height:2.8;text-transform:uppercase}.brand-flower{font-size:19.719625px;display:inline-block;transform:translate(3px,-17px);color:var(--olive);letter-spacing:0}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:22px}.icon-link{font-size:15.43275px;width:24px;height:40px;display:grid;place-items:center}.header-actions #cart{width:auto;margin:0}.header-actions #cart>.dropdown>.btn{border:0;background:transparent;color:var(--ink);box-shadow:none;font-size:9.431125px;padding:10px 0;max-width:180px}.header-actions #cart .btn .fa-cart-shopping{font-size:15.43275px;margin-right:8px}.header-actions #cart>.dropdown>.btn:after{display:none}#cart .dropdown-menu{border-color:var(--line);border-radius:0;box-shadow:0 12px 35px #2f3d3214;min-width:380px;max-height:70vh;overflow-y:auto}#cart .dropdown-menu p{margin-bottom:0}#cart .dropdown-menu .table img{max-width:65px}.navigation-row{display:flex;align-items:center;gap:16px;justify-content:space-between;padding-top:0;padding-bottom:0}.navigation-row #menu{flex:1;margin:0;background:transparent;min-height:50px;border:0;border-radius:0;padding:0}.navigation-row #menu .nav-link,.navigation-row #menu .dropdown-item{color:var(--ink);text-shadow:none}.navigation-row #menu .nav-link{font-size:9.431125px;padding:16px 0;white-space:nowrap}.navigation-row #menu .navbar-nav{gap:25px;flex-wrap:wrap}.category-nav-item{display:flex;align-items:center;gap:6px}.submenu-toggle{background:transparent;border:0;color:var(--muted);font-size:6.859px;padding:6px 3px}.navigation-row #menu .nav-link:hover{text-decoration:underline;text-underline-offset:5px}.navigation-row #menu .dropdown-menu{border-radius:0;border:1px solid var(--line);background:var(--paper);padding:20px;box-shadow:0 18px 40px #2f3d3210;min-width:310px;max-height:65vh;overflow:auto}.navigation-row #menu .dropdown-inner{display:block}.navigation-row #menu .dropdown-inner ul{display:block;min-width:unset}.navigation-row #menu .dropdown-item{font-size:10.2885px;background:transparent;padding:8px}.navigation-row #menu .dropdown-item:hover{background:var(--sage)}.navigation-row #menu .view-all{border-top:1px solid var(--line);margin-top:8px;font-weight:bold}.header-search{width:190px}.header-search form{margin:0!important;border-bottom:1px solid var(--line);flex-wrap:nowrap}.header-search .form-control{border:0;border-radius:0;box-shadow:none;background:transparent;font-size:9.431125px;padding:7px 0;min-width:0}.header-search .btn{border:0;background:transparent;box-shadow:none;padding:7px;font-size:11.145875px;color:var(--ink)}.navbar-toggler{border:0;box-shadow:none!important;color:var(--ink);font-size:11.145875px;padding:12px 0}.navbar-toggler span{margin-left:10px}#content{min-height:400px}.cosmelina-home{padding-top:36px}.ritual-hero{display:grid;grid-template-columns:1fr 1fr;min-height:510px;gap:25px;align-items:stretch}.hero-copy{padding:58px 28px 35px 0;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:7.716375px;font-family:var(--sans);font-weight:400;letter-spacing:2px;color:var(--olive);margin-bottom:24px;line-height:1.7}.hero-copy .eyebrow{display:flex;align-items:center;gap:12px}.eyebrow>span{height:1px;width:28px;display:inline-block;background:var(--olive)}.hero-copy h1{font-size:clamp(30.8655px,3.1722875vw,45.440875px);line-height:1.15;letter-spacing:-1.6px;margin:0 0 25px;white-space:nowrap}.hero-copy h1 em{color:#65795b;letter-spacing:-1.8px}.hero-description{max-width:330px;font-size:11.145875px;line-height:1.9;color:var(--muted);margin-bottom:28px}.btn{border-radius:0;text-shadow:none;box-shadow:none;font-weight:400}.btn-primary{background:var(--olive);border:1px solid var(--olive);background-image:none;color:white}.btn-primary:hover,.btn-primary:focus,.btn-primary:active{background:#2f432c!important;border-color:#2f432c!important;color:white!important;box-shadow:none!important}.editorial-button{padding:15px 22px;font-size:9.431125px;display:inline-flex;gap:45px;align-items:center}.editorial-button span{font-size:18.004875px;line-height:1}.hero-footnote{display:flex;gap:12px;margin-top:auto;padding-top:27px;align-items:center;color:var(--muted);font-size:8.57375px}.line-flower{font-size:26.578625px;color:#849075;line-height:1}.hero-still-life{position:relative;isolation:isolate;background:#e7e9df;overflow:hidden;min-height:505px;border-radius:160px 2px 2px 2px}.hero-orbit{position:absolute;width:430px;height:430px;border-radius:50%;background:#f1f0e7;top:30px;right:-80px;z-index:-1}.botanical-drawing{width:125px;height:210px;position:absolute;top:14px;right:23px;color:#77866b;transform:rotate(20deg);z-index:2;pointer-events:none}.hero-photo{position:absolute;top:105px;left:0;right:0;height:220px;overflow:hidden;mix-blend-mode:multiply}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:48% center;transform:scale(1.06)}.hero-label{position:absolute;left:38px;bottom:38px;z-index:2}.hero-label>span{display:block;letter-spacing:2.5px;font-size:7.716375px;margin-bottom:10px}.hero-label strong{font-family:var(--serif);font-size:24.863875px;font-weight:400;line-height:1.1;display:block}.hero-label a{font-size:8.57375px;display:inline-block;margin-top:16px;border-bottom:1px solid #9ca48f;padding-bottom:3px}.hero-label a span{margin-left:25px}.round-stamp{position:absolute;right:29px;bottom:58px;width:100px;height:100px;border:1px solid #9ca58f;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;transform:rotate(-13deg);background:#f8f7ee55}.round-stamp span{font-size:6.001625px;letter-spacing:1px}.round-stamp b{font-size:29.15075px;font-weight:400;line-height:1.1;color:#768266}.hero-edition{font-size:6.001625px;letter-spacing:1.8px;position:absolute;right:25px;bottom:17px;color:var(--muted)}.care-strip{display:grid;grid-template-columns:repeat(4,1fr);padding-top:30px;padding-bottom:30px;margin-top:35px;border-bottom:1px solid var(--line);gap:15px}.care-strip>span{display:flex;align-items:center;justify-content:center;gap:12px;font-size:8.57375px;color:var(--muted)}.care-strip>span+span{border-left:1px solid var(--line)}.care-strip i{font-size:15.43275px;color:#7b896f}.discovery-section{padding-top:72px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:30px;gap:25px}.section-heading .eyebrow{margin-bottom:12px}.section-heading h2{font-size:29.15075px;line-height:1.25;margin:0;letter-spacing:-.8px}.discovery-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.discovery-card{display:block;position:relative;overflow:hidden;background:#f3ecdd}.discovery-card.home-fragrance{background:#eae9e3}.discovery-index{position:absolute;top:19px;left:24px;font-size:6.859px;letter-spacing:1.6px;z-index:2}.discovery-card img{width:100%;height:245px;object-fit:cover;transition:transform .6s;mix-blend-mode:multiply}.skincare img{object-position:center;object-fit:cover}.home-fragrance img{object-position:30% center}.discovery-card:hover img{transform:scale(1.025)}.discovery-card>div{padding:24px 27px;position:relative;background:#f1eee5}.home-fragrance>div{background:#e8e9e0}.discovery-card h3{font-size:23.149125px;line-height:1.2;letter-spacing:-.5px;margin:0 0 6px}.discovery-card p{font-size:9.431125px;color:var(--muted);margin:0}.circle-arrow{display:grid;place-items:center;border:1px solid #b0b7a4;border-radius:50%;width:37px;height:37px;position:absolute;right:24px;top:27px;font-size:17.1475px}.category-pills{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:25px}.category-pills a{border:1px solid var(--line);border-radius:30px;padding:10px 20px;font-size:8.57375px;transition:background .2s}.category-pills a:hover{background:var(--sage)}.category-pills a span{margin-left:13px}.selection-section{padding-top:80px;padding-bottom:80px}.text-link{font-size:9.431125px;border-bottom:1px solid #9ba68f;padding-bottom:7px;display:inline-flex;gap:35px;align-items:center;white-space:nowrap}.text-link span{font-size:17.1475px;line-height:1}.selection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.product-thumb.ritual-product{border:0;margin-bottom:28px;background:transparent;display:flex;flex-direction:column}.ritual-product>.image{position:relative;padding:0;background:#f2f1eb;overflow:hidden;border:1px solid #eeece6}.ritual-product>.image img{width:100%;aspect-ratio:7/8;object-fit:contain;mix-blend-mode:multiply;transition:transform .45s}.ritual-product:hover>.image img{transform:scale(1.035)}.product-badge{position:absolute;left:12px;top:12px;background:#fdfcf9eb;color:var(--olive);font-size:7.716375px;padding:4px 8px;border:1px solid #d8dbce}.ritual-product .content{padding:17px 0 0;display:flex;flex-direction:column;flex:1}.ritual-product .description{padding:0;min-height:0;flex:1}.ritual-product h4{font-family:var(--sans);font-weight:400;font-size:10.2885px;line-height:1.6;margin:0 0 13px;min-height:58px}.ritual-product .price{color:var(--ink);font-size:11.145875px;font-weight:400;margin-bottom:15px}.ritual-product .price-old{font-size:9.431125px;color:#858879;font-weight:400;margin-left:5px}.ritual-product .price-tax{font-size:8.57375px}.ritual-product .button{background:transparent;display:flex;border-top:1px solid var(--line);overflow:visible}.ritual-product .button button{border:0;background:transparent;color:var(--ink);float:none;text-shadow:none;line-height:1.3;min-height:43px;width:auto;font-size:8.57375px;text-transform:none}.ritual-product .button .product-add{display:flex;justify-content:space-between;align-items:center;gap:8px;flex:1;text-align:left;padding:10px 12px 10px 0}.ritual-product .button .product-wish{width:37px;border-left:1px solid var(--line);font-size:12.00325px}.ritual-product .button button:hover{background:var(--sage);color:var(--olive)}.manifesto{background:var(--sage);position:relative;overflow:hidden}.manifesto-inner{padding-top:65px;padding-bottom:65px;text-align:center;position:relative;max-width:760px}.manifesto-flower{font-size:33.437625px;color:#879075;display:block;line-height:1;margin-bottom:23px}.manifesto .eyebrow{margin-bottom:18px;font-size:6.859px}.manifesto h2{font-size:36.00975px;line-height:1.15;letter-spacing:-1px;margin-bottom:22px}.manifesto h2 em{color:#6b7c5f}.manifesto p:not(.eyebrow){max-width:450px;margin:0 auto 24px;font-size:10.2885px;color:#626e5c;line-height:1.9}.ritual-footer{background:#f4f2eb;color:var(--ink);border:0;padding:65px 0 0;margin:0}.footer-grid{display:grid;grid-template-columns:2fr 1.2fr 1fr 1fr;gap:45px}.footer-brand .wordmark{font-size:35.152375px;color:var(--ink);text-align:left}.footer-brand .wordmark span{font-size:18.86225px;vertical-align:top;letter-spacing:0;margin-left:4px}.footer-brand p{max-width:235px;font-size:9.431125px;color:var(--muted);margin-top:20px;line-height:1.9}.footer-signature{font-family:var(--serif);font-style:italic;font-size:17.1475px;color:#6b7c5f}.ritual-footer h5{font-size:9.431125px;font-weight:400;margin:5px 0 20px;color:var(--ink)}.ritual-footer ul{list-style:none;padding:0;margin:0}.ritual-footer li{font-size:9.431125px;line-height:1.6;margin-bottom:9px}.ritual-footer a{color:var(--muted)}.ritual-footer a:hover{color:var(--olive);text-decoration:underline}.ritual-footer .wordmark:hover{text-decoration:none}.footer-bottom{margin-top:50px;padding:21px 0;border-top:1px solid var(--line);font-size:7.716375px;display:flex;justify-content:space-between;color:var(--muted)}.footer-bottom span span{font-size:16.290125px;vertical-align:middle;margin-left:7px}
/* The same visual language continues through all upstream commerce screens. */
main>.container:not(.ritual-hero){padding-top:30px;padding-bottom:50px}.breadcrumb{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:12px 0 18px;margin-bottom:32px;font-size:9.431125px}.breadcrumb li:after{border-color:var(--line);height:14px;top:0;width:14px}.breadcrumb a{color:var(--muted)}.list-group{border-radius:0}.list-group-item{border-color:var(--line);background:transparent;font-size:10.2885px;padding:13px 15px}.list-group-item.active{background:var(--sage);border-color:var(--line);color:var(--ink)}.form-control,.form-select{border-radius:0;border-color:var(--line);background-color:#fffefa;color:var(--ink);font-size:11.145875px;min-height:42px}.form-control:focus,.form-select:focus{border-color:#74876a;box-shadow:0 0 0 2px #465d4317}.form-label,.col-form-label{font-size:10.2885px;color:var(--muted)}.btn-light,.btn-secondary,.btn-default{background:#eeeee5;color:var(--ink);border:1px solid var(--line);background-image:none}.btn-light:hover,.btn-secondary:hover,.btn-default:hover{background:#e3e7da;border-color:#b5bfaa;color:var(--ink)}.table{--bs-table-bg:transparent;--bs-table-color:var(--ink);--bs-table-border-color:var(--line);font-size:10.2885px}.table thead{background:var(--sage)}.table td,.table th{padding:14px 10px}.img-thumbnail{background:#fffefa;border-color:var(--line);border-radius:0}.nav-tabs{border-color:var(--line);margin-top:30px}.nav-tabs .nav-link{border-radius:0;color:var(--muted);font-size:10.2885px;padding:15px 25px}.nav-tabs .nav-link.active{background:var(--paper);color:var(--ink);border-color:var(--line) var(--line) var(--paper)}.tab-content{padding:25px 0;font-size:11.145875px;line-height:1.9}.pagination{--bs-pagination-color:var(--olive);--bs-pagination-active-bg:var(--olive);--bs-pagination-active-border-color:var(--olive);--bs-pagination-border-radius:0;--bs-pagination-border-color:var(--line)}.page-link{background:transparent}.alert{border-radius:0;font-size:10.2885px}.card,.accordion-item{border-color:var(--line);border-radius:0;background:transparent}.card-header,.accordion-button{background:var(--sage);color:var(--ink);font-size:11.145875px;border-radius:0!important}.card-body{padding:24px}.accordion-button:not(.collapsed){background:var(--sage);color:var(--ink)}#product-product #content h1{font-size:29.15075px;line-height:1.25}#product-info .list-unstyled{font-size:10.2885px}#product-info .list-unstyled h2{font-family:var(--sans);font-size:21.434375px}.image-additional img{border-color:var(--line)}#button-cart{padding:15px 28px;font-size:11.145875px}#product-list{row-gap:25px}.product-list .product-thumb .image{min-width:210px}.product-list .product-thumb h4{font-size:12.860625px}.product-list .product-thumb .content{padding:20px}.product-list .product-thumb .button{margin-top:15px}#account-login h2,#checkout-checkout h2{font-size:22.29175px}fieldset legend{font-family:var(--serif);font-size:19.719625px;border-color:var(--line);color:var(--ink)}.modal-content{border-radius:0;background:var(--paper)}.modal-header,.modal-footer{border-color:var(--line)}
@media(min-width:992px){#menu .navbar-toggler{display:none}.dropdown-menu.show{display:block!important}}
@media(min-width:1400px){.container{max-width:1380px}.ritual-hero{min-height:550px}.hero-still-life{min-height:535px}.hero-copy{padding-top:67px}.hero-photo{top:120px;height:235px}.hero-copy h1{font-size:48.870375px}.navigation-row #menu .navbar-nav{gap:31px}}
@media(max-width:1199px){.container{padding-left:28px;padding-right:28px}.masthead{grid-template-columns:1fr 1.2fr 1fr}.header-actions{gap:13px}.header-intro{font-size:7.716375px}.navigation-row #menu .navbar-nav{gap:15px}.navigation-row #menu .nav-link{font-size:8.57375px}.header-search{width:150px}.hero-copy h1{font-size:37.7245px;white-space:normal}.hero-still-life{min-height:495px}.hero-copy{padding-right:12px}.section-heading h2{font-size:24.863875px}.selection-grid{gap:18px}.footer-grid{gap:25px}}
@media(max-width:991px){html{scroll-padding-top:145px}.masthead{height:92px;grid-template-columns:1fr 1fr}.header-intro{display:none}.wordmark{text-align:left;font-size:35.152375px}.wordmark small{font-size:6.001625px;letter-spacing:2px}.brand-flower{font-size:17.1475px;transform:translate(2px,-13px)}.header-actions #cart>.dropdown>.btn{font-size:8.57375px;max-width:160px}.navigation-row{align-items:flex-start;gap:20px;position:relative}.navigation-row #menu{position:static;flex:none;min-height:49px}.navigation-row #menu .navbar-collapse{position:absolute;top:49px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);max-height:72vh;overflow-y:auto;padding:15px 28px;box-shadow:0 20px 25px #2f3d3214}.navigation-row #menu .navbar-nav{display:block}.navigation-row #menu .nav-link{font-size:11.145875px;padding:12px 0}.category-nav-item{justify-content:space-between}.submenu-toggle{font-size:8.57375px;padding:12px 16px}.navigation-row #menu .dropdown-menu{box-shadow:none;padding:10px;border:0;border-left:1px solid var(--line);background:#f1f2eb;margin-bottom:10px;min-width:0}.header-search{width:220px;padding-top:6px}.ritual-hero{gap:18px}.hero-copy{padding-top:30px;padding-bottom:25px}.hero-copy h1{font-size:32.58025px;letter-spacing:-1px}.hero-copy .eyebrow{font-size:6.859px;letter-spacing:1px}.hero-still-life{min-height:470px;border-top-left-radius:110px}.hero-photo{height:190px;top:105px}.hero-label{left:25px;bottom:38px}.hero-label strong{font-size:22.29175px}.round-stamp{width:80px;height:80px;right:18px;bottom:85px}.round-stamp span{font-size:4.286875px}.botanical-drawing{width:100px;height:160px}.care-strip{grid-template-columns:repeat(2,1fr);row-gap:23px}.care-strip>span:nth-child(3){border-left:0}.discovery-card img{height:190px}.discovery-card h3{font-size:20.577px}.discovery-card p{max-width:200px;font-size:8.57375px}.discovery-card>div{padding:22px}.circle-arrow{right:17px;top:28px;width:30px;height:30px}.section-heading{align-items:center}.selection-grid{grid-template-columns:repeat(2,1fr);gap:30px}.ritual-product h4{min-height:40px}.footer-grid{grid-template-columns:2fr 1fr;row-gap:40px}}
@media(max-width:575px){.container{padding-left:20px;padding-right:20px}.preview-note{font-size:6.859px;line-height:1.5}.announcement{font-size:7.716375px;padding:7px 5px;letter-spacing:.04em}.announcement span{margin:0 11px}.masthead{height:82px;gap:8px}.wordmark{font-size:30.8655px;letter-spacing:-2.5px}.wordmark small{font-size:5.14425px;letter-spacing:1.55px;line-height:2.7}.brand-flower{font-size:14.575375px;transform:translate(2px,-12px)}.header-actions{gap:13px}.header-actions .icon-link{font-size:13.718px;width:18px}.header-actions #cart>.dropdown>.btn{font-size:0;max-width:40px}.header-actions #cart .btn .fa-cart-shopping{font-size:15.43275px;margin:0}.header-actions #cart>.dropdown>.btn .fa-cart-shopping:after{content:' ';position:absolute;width:5px;height:5px;border-radius:50%;background:var(--olive);top:7px;right:0}#cart .dropdown-menu{min-width:min(350px,calc(100vw - 32px));max-width:calc(100vw - 32px);right:0;transform:translateX(0)}#cart .dropdown-menu .table{font-size:8.57375px}#cart .dropdown-menu .table td{padding:5px}.navigation-row{gap:20px}.header-search{width:165px}.navbar-toggler{font-size:9.431125px;padding:14px 0}.navbar-toggler span{margin-left:8px}.header-search .form-control{font-size:8.57375px}.cosmelina-home{padding-top:15px}.ritual-hero{display:flex;flex-direction:column;gap:23px}.hero-copy{padding:18px 0 0}.hero-copy .eyebrow{margin-bottom:17px;font-size:6.859px;letter-spacing:1.4px}.hero-copy h1{font-size:33.437625px;letter-spacing:-1.5px;margin-bottom:18px;line-height:1.13}.hero-description{font-size:10.2885px;line-height:1.8;max-width:295px;margin-bottom:20px}.editorial-button{padding:13px 19px;font-size:8.57375px;gap:40px}.hero-footnote{padding-top:18px;font-size:7.716375px;gap:8px}.line-flower{font-size:20.577px}.hero-still-life{min-height:390px;border-radius:110px 1px 1px 1px}.hero-orbit{width:350px;height:350px;right:-65px;top:15px}.hero-photo{top:85px;height:185px}.botanical-drawing{height:145px;right:15px;top:3px}.hero-label{left:25px;bottom:26px}.hero-label>span{font-size:6.001625px;margin-bottom:8px}.hero-label strong{font-size:21.434375px}.hero-label a{font-size:7.716375px;margin-top:10px}.round-stamp{width:77px;height:77px;bottom:36px;right:24px}.round-stamp b{font-size:23.149125px}.round-stamp span{font-size:4.286875px}.hero-edition{font-size:5.14425px;bottom:11px}.care-strip{margin-top:20px;padding-top:24px;padding-bottom:24px;gap:18px 5px}.care-strip>span{font-size:6.859px;gap:8px;justify-content:flex-start}.care-strip i{font-size:12.860625px}.care-strip>span+span{border:0}.discovery-section{padding-top:43px}.section-heading{gap:10px;margin-bottom:22px;align-items:flex-start}.section-heading .eyebrow{font-size:6.859px;letter-spacing:1.5px;margin-bottom:9px}.section-heading h2{font-size:24.0065px;line-height:1.2;letter-spacing:-.7px}.discovery-grid{grid-template-columns:1fr;gap:19px}.discovery-card img{height:190px}.discovery-card h3{font-size:23.149125px}.discovery-card p{font-size:8.57375px;max-width:240px}.discovery-card>div{padding:21px 23px}.circle-arrow{right:23px;top:25px}.category-pills{gap:8px;justify-content:flex-start;margin-top:20px}.category-pills a{font-size:7.716375px;padding:8px 12px}.category-pills a span{margin-left:8px}.selection-section{padding-top:45px;padding-bottom:32px}.selection-section .section-heading{display:block}.selection-section .section-heading h2{max-width:310px}.selection-section .text-link{margin-top:19px;font-size:8.57375px;padding-bottom:4px}.selection-grid{gap:17px}.ritual-product .content{padding-top:12px}.ritual-product h4{font-size:9.431125px;min-height:68px;margin-bottom:10px;line-height:1.5}.ritual-product .price{font-size:10.2885px;margin-bottom:12px}.ritual-product .price-old{font-size:8.57375px;margin-left:0;display:block}.ritual-product .button .product-add{font-size:7.716375px;gap:3px;padding-right:7px;min-height:42px}.ritual-product .button .product-wish{width:29px;font-size:10.2885px}.product-badge{font-size:6.001625px;left:7px;top:7px;padding:3px 5px}.manifesto-inner{padding-top:42px;padding-bottom:42px}.manifesto-flower{font-size:26.578625px;margin-bottom:18px}.manifesto h2{font-size:27.436px;margin-bottom:19px}.manifesto p:not(.eyebrow){font-size:9.431125px;max-width:300px}.manifesto .eyebrow{font-size:6.001625px;letter-spacing:1.6px}.ritual-footer{padding-top:40px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 24px}.footer-brand{grid-column:1/-1}.footer-brand .wordmark{font-size:31.722875px}.footer-brand p{max-width:280px;margin-top:14px}.ritual-footer h5{font-size:9.431125px;margin-bottom:13px}.ritual-footer li{font-size:8.57375px}.footer-bottom{margin-top:30px;font-size:6.859px;gap:10px}.footer-bottom span span{display:none}main>.container:not(.ritual-hero){padding-top:18px;padding-bottom:35px}.breadcrumb{margin-bottom:23px;overflow-wrap:anywhere}#content h1{font-size:25.72125px}#product-product #content h1{font-size:23.149125px}.nav-tabs .nav-link{padding:11px 14px;font-size:9.431125px}.table td,.table th{padding:8px 6px}#checkout-cart .table{font-size:8.57375px}.product-list .product-thumb .image{min-width:110px}.product-list .product-thumb .content{padding:10px}.product-list .product-thumb h4{font-size:10.2885px}.product-list .product-thumb .button span{display:none}.card-body{padding:17px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.locale-options{position:relative;font-size:12.860625px;line-height:1;align-self:center}.locale-options summary{list-style:none;cursor:pointer;display:grid;place-items:center;min-width:24px;min-height:40px}.locale-options summary::-webkit-details-marker{display:none}.locale-options>div{position:absolute;top:40px;right:0;width:170px;z-index:1030;background:var(--paper);padding:14px;border:1px solid var(--line);box-shadow:0 12px 30px #2f3d3214;display:flex;flex-direction:column;gap:10px}.locale-options .btn-link{color:var(--ink);font-size:9.431125px;text-decoration:none;padding:8px 0}.locale-options .dropdown-menu{border-radius:0;font-size:9.431125px;min-width:160px;border-color:var(--line)}
@media(max-width:575px){.header-actions{gap:9px}.locale-options{font-size:12.00325px}.locale-options summary{min-width:20px}}
#menu .navbar-toggler i{color:var(--ink);font-size:12.00325px}
.category-heading{padding:10px 0 5px;max-width:740px}.category-heading .eyebrow{margin-bottom:15px}.category-heading h1{font-size:40.296625px;letter-spacing:-1px;margin-bottom:19px}.category-intro{font-size:10.2885px;color:var(--muted);line-height:1.9;max-width:650px}.category-refine{justify-content:flex-start;margin:22px 0 30px;gap:9px}.catalog-toolbar{display:flex;align-items:flex-end;gap:20px;padding:22px 0;border-top:1px solid var(--line);margin-bottom:10px}.catalog-view{display:flex;gap:22px;align-items:center;margin-right:auto;align-self:center}.catalog-view .text-link{font-size:8.57375px;gap:8px}.catalog-view .btn{font-size:10.2885px;padding:8px 11px}.catalog-sort{width:235px}.catalog-limit{width:95px}.catalog-toolbar label{font-size:7.716375px;color:var(--muted);margin-bottom:5px;display:block}.catalog-toolbar select{font-size:9.431125px}.catalog-pagination{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px;padding:20px 0}.catalog-pagination p{font-size:8.57375px;color:var(--muted);margin:0}.pagination{flex-wrap:wrap;gap:4px}.pagination .page-link{padding:7px 11px;font-size:9.431125px}.category-story{border-top:1px solid var(--line);margin-top:22px;padding:22px 0;color:var(--muted);font-size:10.2885px}.category-story summary{font-family:var(--serif);font-size:18.86225px;color:var(--ink);cursor:pointer}.category-story>div{padding-top:24px;max-width:850px;line-height:1.9}.category-story-image{float:left;max-width:140px;margin:0 25px 15px 0}#product-info h1{font-size:29.15075px;line-height:1.25}#product-info .image>a>.img-thumbnail{background:#f4f3ed;border:0;mix-blend-mode:multiply}#product-list:not(.product-list) .ritual-product{height:100%}
@media(min-width:1200px){#product-list:not(.product-list)>.col{width:25%}}
@media(max-width:575px){.category-heading h1{font-size:30.8655px}.category-intro{font-size:9.431125px}.category-heading .eyebrow{font-size:6.859px}.category-refine{margin-top:15px;margin-bottom:20px}.catalog-toolbar{flex-wrap:wrap;gap:13px}.catalog-view{width:100%;margin-right:0}.catalog-sort{flex:1;width:auto;min-width:0}.catalog-limit{width:90px}.catalog-pagination{display:block}.catalog-pagination p{margin-top:15px;text-align:left}.pagination{gap:3px}.pagination .page-link{padding:6px 9px;font-size:8.57375px}#product-list:not(.product-list)>.col{width:50%}#product-info h1{font-size:23.149125px}.category-story summary{font-size:17.1475px}}

/* Let the footer follow actual content instead of covering long mobile flows. */
#container{position:relative;display:flex;flex-direction:column;min-height:100vh;margin-bottom:0}
#container>main{flex:1}
#content,#column-left,#column-right{padding-bottom:0}
.ritual-footer{position:static}

/* Original Cosmelina identity, verified against the existing storefront.
   Accent and prices #5b9751; notification #5e9b53; footer #637079.
   Product photography supplies the other colours. The original PNG is unaltered. */
:root {
  --paper:#fff; --ink:#333; --muted:#666; --olive:#5b9751;
  --sage:#eaf2e6; --rose:#f1f4ee; --line:#dce4d8;
  --brand-green:#5b9751; --brand-notice:#5e9b53; --brand-slate:#637079;
}
.announcement{background:var(--brand-notice);color:#fff}
.announcement span{color:#e3f0dd}
.shop-header{background:#fff}
.brand-logo{display:inline-block;width:270px;max-width:100%;justify-self:center;line-height:0}
.brand-logo img{display:block;width:100%;height:auto}
.hero-copy{position:relative;background:#edf4e8;border-radius:2px 2px 100px 2px;padding:54px 32px 35px}
.hero-copy:after{content:'';position:absolute;top:22px;right:24px;width:9px;height:9px;border-radius:50%;background:#5b9751;box-shadow:-16px 0 #94b48a,-32px 0 #637079}
.hero-copy h1{font-size:clamp(29.15075px,2.915075vw,42.86875px)}
.hero-copy h1 em{color:#4e8145}
.hero-copy .eyebrow{color:#53734a}
.hero-copy .eyebrow>span{background:#5b9751}
.hero-copy .editorial-button{background:#5b9751;border-color:#5b9751;color:#10200d}
.hero-copy .editorial-button:hover{background:#487c40!important;border-color:#487c40!important;color:#fff!important}
.hero-description{color:#586651}
.hero-footnote{color:#607056}
.hero-footnote .line-flower{color:#5b9751}
.hero-still-life{background:#e3ebdf}
.hero-orbit{background:#f8faf5;width:430px;height:430px;top:26px;right:-100px}
.botanical-drawing{color:#73926b}
.hero-label>span{color:#526d49}
.hero-label strong{color:#444}
.hero-label strong em{color:#4e8145}
.hero-label a{border-color:#8fac84}
.round-stamp{background:#f5faf0;border-color:#87ab7d;color:#527648}
.round-stamp b{color:#5b9751}
.hero-edition{color:#62735b}
.care-strip{border-bottom-color:#d4e3cd}
.care-strip i{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#eaf2e4;color:#527f47}
.care-strip>span:nth-child(2) i{background:#e0ebd9;color:#527f47}
.care-strip>span:nth-child(3) i{background:#e8edef;color:#637079}
.care-strip>span:nth-child(4) i{background:#edf2e5;color:#6b8259}

.discovery-card{background:#eef3e7}
.discovery-card.home-fragrance{background:#e4ece7}
.discovery-card>div{background:#eaf2e3}
.discovery-card.home-fragrance>div{background:#e5ece8}
.discovery-card .discovery-index{background:#fffffff0;border-radius:20px;padding:5px 11px;top:15px;left:17px;color:#547b47}
.discovery-card h3{color:#3e5c35}
.home-fragrance h3{color:#4e5b61}
.discovery-card p{color:#65715b}
.home-fragrance p{color:#657378}
.discovery-card .circle-arrow{background:#f8fcf4;border-color:#a3bd93;color:#4f7b40}
.home-fragrance .circle-arrow{background:#f5f8f6;border-color:#a5b9af;color:#61766d}
.category-pills a{background:#edf4e8;border-color:#d2e1c9;color:#456d3b}
.category-pills a:nth-child(3n+2){background:#f5f7f1;border-color:#dce5d4;color:#5b7050}
.category-pills a:nth-child(3n+3){background:#edf0f1;border-color:#d9e0e3;color:#56656d}
.category-pills a:hover{background:#dcead3;color:#35562b;border-color:#9dbe8d}
/* The frames carry the tint; packshots retain their actual colours on white. */
.ritual-product>.image{background:#e7efdf;border:0;padding:14px 14px 0;border-radius:65px 3px 3px 3px}
.selection-grid>.ritual-product:nth-child(3n+2)>.image,#product-list>.col:nth-child(3n+2) .ritual-product>.image{background:#edf0eb}
.selection-grid>.ritual-product:nth-child(3n+3)>.image,#product-list>.col:nth-child(3n+3) .ritual-product>.image{background:#e8edee}
.ritual-product>.image>a{display:block;background:#fff;border-radius:55px 2px 2px 2px;overflow:hidden}
.ritual-product>.image img{mix-blend-mode:normal;background:#fff}
.ritual-product .content{background:#fff}
.ritual-product h4 a:hover{color:#4d8044}
.ritual-product .price-new{color:#5b9751}
.ritual-product .button{border:0;gap:5px}
.ritual-product .button .product-add{color:#fff;background:#222;padding:11px 13px}
.ritual-product .button .product-add:hover{background:#5b9751;color:#10200d}
.ritual-product .button .product-wish{background:#e5efdd;color:#466e3b;border-left:0;width:42px}
.ritual-product .button .product-wish:hover{background:#cedfc2;color:#355b29}
.product-badge{background:#5b9751;color:#10200d;border-color:#5b9751;left:10px;top:11px}
.manifesto{background:#e4efdc}
.manifesto:before,.manifesto:after{content:'✳';position:absolute;font-family:Georgia,serif;font-size:240.065px;line-height:1;color:#c9ddbc;top:20px;left:-100px;transform:rotate(-15deg)}
.manifesto:after{left:auto;right:-70px;top:auto;bottom:-55px;color:#d3e3c9;font-size:274.36px}
.manifesto-inner{z-index:1}
.manifesto-flower{color:#5b9751}
.manifesto .eyebrow{color:#588048}
.manifesto h2 em{color:#527e43}
.manifesto p:not(.eyebrow){color:#627458}
.ritual-footer{background:#637079;color:#fff}
.ritual-footer .footer-brand .brand-logo{background:#fff;padding:10px 14px;width:230px}
.ritual-footer h5{color:#fff}
.ritual-footer a,.ritual-footer .footer-brand p{color:#edf1f3}
.ritual-footer a:hover{color:#fff}
.footer-signature{color:#dcebd3}
.footer-bottom{border-color:#819098;color:#edf1f3}
.category-heading{position:relative;max-width:none;background:#edf4e7;padding:34px 40px 27px;border-radius:3px 80px 3px 3px;overflow:hidden}
.category-heading .eyebrow{position:relative;z-index:1;color:#588048}
.category-heading h1{position:relative;z-index:1;color:#4e7942;max-width:70%}
.category-intro{position:relative;z-index:1;max-width:65%;color:#627158}
.catalog-toolbar{border-top-color:#d2e4ca}
.category-story{background:#f0f4ec;padding:22px;border:0}
.category-story summary{color:#527a43}
.list-group-item.active{background:#e0ecd8;color:#456b38}
.card-header{background:#e1edd9}
.breadcrumb li:last-child a{color:#4e7e42}
.pagination{display:flex;flex-wrap:wrap!important;gap:4px}
@media(min-width:1400px){.hero-copy{padding-top:65px}.hero-copy h1{font-size:44.5835px}}
@media(max-width:1199px){.hero-copy{padding:38px 24px 28px}.hero-copy h1{font-size:36.00975px}}
@media(max-width:991px){.brand-logo{justify-self:start;width:230px}.hero-copy{padding:35px 22px 25px;border-bottom-right-radius:65px}.hero-copy h1{font-size:30.008125px}.hero-orbit{width:350px;height:350px}.hero-description{font-size:10.2885px}}
@media(max-width:575px){
  .brand-logo{width:175px}.masthead{grid-template-columns:1fr auto}.ritual-hero{gap:17px}
  .hero-copy{padding:32px 21px 25px;border-bottom-right-radius:65px}
  .hero-copy:after{top:17px;right:20px;width:6px;height:6px;box-shadow:-11px 0 #94b48a,-22px 0 #637079}
  .hero-copy h1{font-size:30.008125px;line-height:1.12;letter-spacing:-1.3px}
  .hero-copy .eyebrow{font-size:6.001625px;letter-spacing:1px}.hero-description{font-size:9.431125px}
  .hero-copy .editorial-button{font-size:7.716375px;gap:24px}.hero-footnote{font-size:6.859px;max-width:240px;padding-top:24px}
  .hero-still-life{min-height:360px}.hero-photo{top:68px;height:176px}.hero-label{bottom:28px}.hero-label strong{font-size:20.577px}.round-stamp{bottom:33px}
  .care-strip i{width:28px;height:28px;font-size:11.145875px;flex-shrink:0}.care-strip>span{font-size:6.859px;gap:6px}
  .ritual-product>.image{padding:9px 9px 0;border-top-left-radius:38px}.ritual-product>.image>a{border-top-left-radius:32px}
  .ritual-product .button .product-add{font-size:7.716375px;padding:9px 7px}.ritual-product .button .product-wish{width:29px}
  .product-badge{font-size:6.001625px;left:5px;top:7px;padding:3px 5px}
  .manifesto:before{font-size:137.18px;left:-90px;top:15px}.manifesto:after{font-size:154.3275px;right:-90px;bottom:-45px}
  .category-heading{padding:27px 22px 23px;border-top-right-radius:65px}.category-heading h1{max-width:90%;font-size:30.008125px}
  .category-intro{max-width:95%;font-size:8.57375px}
  .category-heading .eyebrow{font-size:6.001625px;letter-spacing:1.4px}
}
@media(max-width:360px){.brand-logo{width:155px}.header-actions{gap:7px}}

/* Editorial text and a catalogue-driven disclosure navigation. */
:root {
  --ink: #46515b;
  --muted: #69747d;
  --copy: #46515b;
  --copy-soft: #626f79;
  --heading: #43515d;
  --action: #526776;
}
body, a, h1, h2, h3, h4, h5, h6 { color: var(--copy); }
a:hover, a:focus-visible { color: #526776; }
.hero-copy h1, .hero-label strong, .discovery-card h3, .home-fragrance h3,
.category-heading h1, .manifesto h2, #product-info h1 { color: var(--heading); }
.hero-copy h1 em, .hero-label strong em, .manifesto h2 em { color: #73808a; }
.eyebrow, .hero-copy .eyebrow, .hero-label>span, .manifesto .eyebrow,
.category-heading .eyebrow, .hero-edition { color: #626e78; }
.hero-description, .hero-footnote, .discovery-card p, .home-fragrance p,
.category-intro, .manifesto p:not(.eyebrow), .category-story, .care-strip>span { color: var(--copy-soft); }
.category-pills a, .category-pills a:nth-child(3n+2), .category-pills a:nth-child(3n+3),
.category-pills a:hover, .breadcrumb li:last-child a, .category-story summary,
.list-group-item.active, .ritual-product h4 a:hover { color: var(--copy); }
.ritual-product .price, .ritual-product .price-new { color: #435a6b; font-weight: 600; }
.ritual-product .price-old { color: #66737d; font-weight: 400; }
.btn-primary, .hero-copy .editorial-button, .ritual-product .button .product-add {
  background: var(--action); border-color: var(--action); color: #fff;
}
.btn-primary:hover, .btn-primary:focus, .hero-copy .editorial-button:hover,
.ritual-product .button .product-add:hover { background: #3e5868!important; border-color: #3e5868!important; color: #fff!important; }
.product-badge { color: #fff; background: #587b4c; border-color: #587b4c; }
.ritual-product .button .product-wish, .ritual-product .button .product-wish:hover,
.discovery-card .circle-arrow, .home-fragrance .circle-arrow, .round-stamp { color: #5b6d75; }
.ritual-footer, .ritual-footer h5, .ritual-footer a, .ritual-footer a:hover { color: #f5f7f8; }

.navigation-row { position: relative; gap: 24px; }
.mega-navigation { flex: 1; min-width: 0; }
.mega-catalog { display: flex; align-items: center; gap: 12px; min-height: 62px; }
.mega-topics { display: flex; align-items: stretch; gap: 12px; list-style: none; margin: 0; padding: 0; }
.mega-all { display: inline-flex; align-items: center; gap: 9px; font-size: 12.6034125px; font-weight: 600; white-space: nowrap; padding: 10px 12px; background: #f0f4ec; border: 1px solid #e4eadf; border-radius: 6px; color: var(--copy); }
.mega-all:hover { background: #e7efdf; color: var(--copy); }
.mega-all i { color: #779568; font-size: 11.70316875px; }
.mega-trigger { position: relative; display: flex; align-items: center; gap: 7px; padding: 21px 0; background: transparent; border: 0; color: var(--copy); font-size: 14.4039px; line-height: 24px; white-space: nowrap; cursor: pointer; }
.mega-trigger:after { content: ''; position: absolute; height: 3px; left: 0; right: 13px; bottom: 4px; background: #83a86e; transform: scaleX(0); transform-origin: left; transition: transform .18s; border-radius: 3px; }
.mega-trigger:hover, .mega-trigger[aria-expanded=true] { color: #435965; }
.mega-trigger:hover:after, .mega-trigger[aria-expanded=true]:after { transform: scaleX(1); }
.mega-chevron { font-size: 7.20195px; color: #8a959b; transition: transform .2s; }
.mega-trigger[aria-expanded=true] .mega-chevron { transform: rotate(180deg); }
.mega-topic-icon { display: none; }
.mega-mobile-toggle, .mega-mobile-heading, .mega-mobile-intro, .mega-mobile-footer { display: none; }
.mega-panel[hidden], .mega-scrim[hidden] { display: none!important; }
.mega-panel { position: absolute; top: 100%; left: 36px; right: 36px; padding: 0; background: #fff; border: 1px solid #e2e7e7; border-top: 3px solid #91ad7e; border-radius: 0 0 14px 14px; box-shadow: 0 22px 42px #35475321; max-height: var(--mega-available-height,calc(100dvh - 230px)); overflow-y: auto; overscroll-behavior: contain; z-index: 1030; }
.mega-panel-body { display: grid; grid-template-columns: 175px minmax(0,1fr) 250px; gap: 30px; padding: 31px; }
.mega-kicker { display: block; color: #68747d; font-size: 9.90268125px; line-height: 1.6; letter-spacing: 1.65px; font-weight: 400; }
.mega-intro { padding-right: 17px; border-right: 1px solid #e9ece9; }
.mega-category-mark { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 14px; color: #78926b; background: #eef3e8; margin: 21px 0 14px; font-size: 17.10463125px; }
.mega-intro h2 { font-family: Georgia,serif; font-size: 24.30658125px; line-height: 1.18; margin: 0 0 13px; color: #485662; }
.mega-intro p { font-size: 12.6034125px; line-height: 1.85; color: #66737d; margin-bottom: 20px; }
.mega-explore { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 11px 0; border-bottom: 1px solid #b7c7ac; font-size: 12.6034125px; font-weight: 600; color: #536774; }
.mega-explore span { font-size: 17.10463125px; font-weight: 400; }
.mega-link-area { min-width: 0; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; }
.mega-link-groups { display: grid; grid-template-columns: repeat(var(--group-count),minmax(0,1fr)); gap: 24px; }
.mega-group h3 { font-family: Arial,Helvetica,sans-serif; font-size: 11.70316875px; font-weight: 600; line-height: 1.7; margin: 1px 0 16px; color: #687782; letter-spacing: .3px; }
.mega-group ul { list-style: none; padding: 0; margin: 0; }
.mega-group li { margin: 0; padding: 0; }
.mega-group>ul>li>a { display: flex; justify-content: space-between; gap: 5px; color: #4f5a65; font-size: 14.4039px; line-height: 1.5; padding: 8px 0; border-bottom: 1px solid #f1f3f0; }
.mega-link-arrow { color: #899b91; opacity: 0; transform: translateX(-4px); transition: opacity .15s,transform .15s; flex-shrink: 0; }
.mega-group a:hover, .mega-group a:focus-visible { color: #435965; background: #f4f7f0; }
.mega-group a:hover span, .mega-group a:focus-visible span { opacity: 1; transform: none; }
.mega-grandchildren { padding: 3px 0 7px 10px!important; border-left: 1px solid #dce7d3; margin: 5px 0!important; }
.mega-grandchildren a { display: block; padding: 6px 0; font-size: 12.6034125px; color: #667580; }
.mega-brands { padding-top: 17px; border-top: 1px solid #e5ebe0; }
.mega-brands>span { display: block; font-size: 10.802925px; color: #68747d; margin-bottom: 10px; }
.mega-brands>div { display: flex; flex-wrap: wrap; gap: 7px; }
.mega-brands a { border: 1px solid #e4e9e5; border-radius: 5px; background: #f8faf7; padding: 7px 11px; font-size: 11.70316875px; color: #5f6d77; }
.mega-brands a:hover { background: #edf3e8; color: #485e6b; }
.mega-feature { display: flex; flex-direction: column; align-self: stretch; min-width: 0; background: #f5eddd; border-radius: 65px 8px 8px 8px; overflow: hidden; color: #53616a; }
.mega-feature-photo { height: 177px; overflow: hidden; background: #f5f4eb; }
.mega-feature-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.mega-feature-caption { position: relative; padding: 21px 24px 25px; flex: 1; }
.mega-feature-caption>span:first-child { display: block; font-size: 9.90268125px; letter-spacing: 1.6px; color: #696c63; margin-bottom: 11px; }
.mega-feature-caption strong { display: block; font-family: Georgia,serif; font-weight: 400; font-size: 22.50609375px; line-height: 1.18; color: #5b625f; padding-right: 15px; }
.mega-feature-arrow { position: absolute; right: 18px; bottom: 18px; font-size: 19.8053625px; color: #849080; }
.mega-feature-home { background: #e6eeed; }
.mega-feature-makeup { background: #f2e6e5; }
.mega-feature-jewelry { background: #e7ebef; }
.mega-feature-cars { background: #e6edef; }
.mega-feature-sale { background: #f4e9da; }
.mega-feature-makeup .mega-feature-photo img, .mega-feature-cars .mega-feature-photo img, .mega-feature-sale .mega-feature-photo img { object-fit: contain; mix-blend-mode: multiply; }
.mega-feature-art { position: relative; display: grid; place-items: center; height: 170px; background: #f8f6f0; overflow: hidden; }
.mega-feature-art>i { font-size: 49.51340625px; color: #819288; }
.mega-feature-art>span { position: absolute; right: -15px; top: -25px; font-family: Georgia,serif; font-size: 126.034125px; color: #e2e9db; }
.mega-no-subcategories { padding-top: 18px; max-width: 350px; }
.mega-no-subcategories h3 { font-family: Georgia,serif; font-size: 29.70804375px; line-height: 1.2; margin: 19px 0; }
.mega-no-subcategories p { font-size: 12.6034125px; color: #66737d; }
.mega-no-subcategories>a { display: inline-flex; gap: 35px; font-size: 12.6034125px; border-bottom: 1px solid #afc29e; padding-bottom: 8px; margin-top: 10px; }
.mega-panel-footer { display: flex; justify-content: space-between; gap: 20px; padding: 14px 31px; border-top: 1px solid #e8ece6; background: #f7f9f5; }
.mega-panel-footer>span { font-size: 11.70316875px; color: #68747d; }
.mega-panel-footer>span i { margin-right: 8px; color: #88a079; }
.mega-panel-footer>a { font-size: 11.70316875px; color: #5e7280; }
.mega-panel-footer>a span { margin-left: 20px; }
.mega-scrim { position: fixed; inset: 0; background: #35434e38; backdrop-filter: blur(2px); z-index: 1010; }
.mega-more-panel { padding: 29px 31px 31px; }
.mega-extra-heading h2 { font-size: 27.0073125px; margin: 9px 0 25px; }
.mega-extra-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(190px,1fr)); gap: 16px; }
.mega-extra-grid>a { display: flex; align-items: center; gap: 15px; padding: 24px 20px; background: #f2f5ed; border: 1px solid #e4e9de; border-radius: 7px; color: #526570; }
.mega-extra-grid>a:nth-child(2n) { background: #eef2f4; border-color: #e1e7e9; }
.mega-extra-grid>a>i { color: #89a075; font-size: 20.70560625px; }
.mega-extra-grid strong { font-size: 14.4039px; font-weight: 400; flex: 1; }
.mega-extra-grid>a:hover { border-color: #9db68c; background: #e9f0e1; }

@media (min-width: 1400px) {
  .mega-catalog,.mega-topics { gap: 14px; }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .mega-catalog,.mega-topics { gap: 13px; }
  .mega-trigger { font-size: 12.6034125px; }
  .mega-all { font-size: 11.70316875px; padding: 9px; gap: 6px; }
  .header-search { width: 155px; }
  .mega-panel-body { grid-template-columns: 155px minmax(0,1fr) 210px; gap: 23px; padding: 25px; }
  .mega-link-groups { gap: 17px; }
}
@media (max-width: 1199px) {
  .masthead { height: 90px; }
  .navigation-row { min-height: 57px; align-items: center; }
  .mega-mobile-toggle { display: inline-flex; align-items: center; gap: 11px; padding: 15px 0; border: 0; background: transparent; color: #53626e; font-size: 14.4039px; }
  .mega-mobile-toggle i { font-size: 16.2043875px; color: #6b7f70; }
  .mega-catalog { display: none; position: fixed; top: 0; left: 0; bottom: 0; width: min(440px,92vw); padding: 23px 24px 30px; background: #fff; overflow-y: auto; overscroll-behavior: contain; border-right: 1px solid #e1e7dd; box-shadow: 20px 0 55px #35434e29; z-index: 1040; }
  .mega-catalog.is-open { display: block; }
  .mega-mobile-heading { display: flex; justify-content: space-between; gap: 20px; align-items: center; padding-bottom: 24px; border-bottom: 1px solid #e5ebe0; }
  .mega-mobile-heading>img { width: 170px; height: auto; }
  .mega-mobile-close { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid #dfe5dc; border-radius: 50%; color: #6b7b85; background: #f7f9f4; }
  .mega-mobile-intro { display: block; font-family: Georgia,serif; font-size: 25.206825px; color: #526470; margin: 24px 0 20px; }
  .mega-all { display: flex; justify-content: center; font-size: 13.50365625px; padding: 12px; margin-bottom: 20px; }
  .mega-topics { display: block; }
  .mega-item { border-bottom: 1px solid #e9ece5; }
  .mega-trigger { width: 100%; padding: 17px 0; font-size: 15.30414375px; line-height: 1.5; gap: 13px; text-align: left; }
  .mega-trigger>span { flex: 1; }
  .mega-trigger:after { display: none; }
  .mega-topic-icon { display: grid; place-items: center; width: 34px; height: 34px; flex-shrink: 0; border-radius: 10px; font-size: 13.50365625px; background: #eef3e8; color: #819572; }
  .mega-item[data-kind=makeup] .mega-topic-icon { background: #f4eae8; color: #a08684; }
  .mega-item[data-kind=home] .mega-topic-icon { background: #eaf1ef; color: #7d9c91; }
  .mega-item[data-kind=jewelry] .mega-topic-icon { background: #edf0f4; color: #8799a8; }
  .mega-item[data-kind=cars] .mega-topic-icon { background: #edf1f3; color: #879ca4; }
  .mega-item[data-kind=sale] .mega-topic-icon { background: #f7eddd; color: #b29b71; }
  .mega-chevron { font-size: 9.0024375px; }
  .mega-more .mega-trigger { padding-left: 47px; }
  .mega-panel { position: static; border: 0; border-radius: 0; box-shadow: none; max-height: none; overflow: visible; margin: 0 0 16px; background: #fbfcf9; }
  .mega-panel-body { display: block; padding: 0 16px 16px; }
  .mega-intro { border: 0; padding: 13px 0 18px; margin-bottom: 5px; }
  .mega-intro>.mega-kicker,.mega-category-mark,.mega-intro h2 { display: none; }
  .mega-intro p { font-size: 12.6034125px; margin-bottom: 10px; }
  .mega-explore { padding: 9px 0; font-size: 12.6034125px; }
  .mega-link-groups { display: block; }
  .mega-group { margin: 19px 0; }
  .mega-group h3 { margin-bottom: 7px; font-size: 11.70316875px; color: #677780; }
  .mega-group>ul>li>a { padding: 11px 0; font-size: 14.4039px; min-height: 46px; }
  .mega-link-arrow { opacity: 1; transform: none; font-size: 9.90268125px; }
  .mega-feature { display: none; }
  .mega-brands { margin-top: 19px; }
  .mega-brands a { padding: 9px 11px; }
  .mega-panel-footer { padding: 12px 16px; }
  .mega-panel-footer>span { display: none; }
  .mega-panel-footer>a { display: flex; justify-content: space-between; width: 100%; padding: 5px 0; }
  .mega-no-subcategories { padding: 10px 0; }
  .mega-no-subcategories h3 { font-size: 24.30658125px; }
  .mega-no-subcategories .mega-kicker { display: none; }
  .mega-more-panel { padding: 18px 14px; }
  .mega-extra-heading h2 { font-size: 22.50609375px; margin-bottom: 18px; }
  .mega-extra-grid { grid-template-columns: 1fr; gap: 10px; }
  .mega-extra-grid>a { padding: 17px 13px; }
  .mega-mobile-footer { display: block; padding: 26px 0 0; }
  .mega-mobile-footer a { display: flex; justify-content: space-between; padding: 13px 0; font-size: 13.50365625px; color: #62737e; }
  body.catalog-open { overflow: hidden; }
  .header-search { padding-top: 0; width: 235px; }
}
@media (max-width: 575px) {
  .masthead { height: 80px; }
  .navigation-row { gap: 20px; min-height: 51px; }
  .header-search { width: 180px; }
  .mega-mobile-toggle { font-size: 14.4039px; gap: 9px; }
  .mega-mobile-toggle i { font-size: 14.4039px; }
  .mega-catalog { padding: 21px 20px 25px; }
}
@media (prefers-reduced-motion: reduce) {
  .mega-trigger:after,.mega-chevron,.mega-link-arrow { transition: none; }
}

/* Colour emoji are decorative; source catalogue labels stay intact. */
.category-emoji { display: inline-block; flex: 0 0 auto; font-family: "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size: 1.1em; font-weight: 400; line-height: 1.3; margin-inline-end: .4em; vertical-align: -.04em; letter-spacing: normal; }
.mega-trigger>.category-emoji { margin: 0; flex: 0 0 auto; }
.mega-all>.category-emoji { margin: 0; }
.mega-category-mark .category-emoji { margin: 0; font-size: 22.50609375px; }
.mega-link-label { display: flex; align-items: baseline; min-width: 0; }
.mega-link-label>.category-emoji { font-size: 16.2043875px; }
.mega-grandchildren .category-emoji { font-size: 13.50365625px; }
.mega-extra-grid>.category-emoji { margin: 0; }
.mega-extra-grid>a>.category-emoji { margin: 0; font-size: 22.50609375px; }
.care-strip>span>.category-emoji { font-size: 18.004875px; margin-inline-end: 10px; }
.category-pills .category-emoji { font-size: 14.575375px; }
.category-heading h1 .category-emoji { font-size: .75em; }
@media (max-width: 1199px) {
  .mega-trigger>.category-emoji { display: grid; place-items: center; width: 34px; min-height: 34px; border-radius: 10px; background: #f1f5ed; font-size: 19.8053625px; }
  .mega-more .mega-trigger { padding-left: 0; }
}

@media (min-width: 1200px) and (max-width: 1499px) {
  .navigation-row { gap: 16px; }
  .mega-catalog,.mega-topics { gap: 10px; }
  .header-search { width: 140px; flex-shrink: 0; }
}

/* Give search its own masthead space instead of squeezing the category row. */
.masthead>.header-search { width: min(100%,320px); padding: 0; }
.header-search form { display: flex; align-items: stretch; min-width: 0; border: 1px solid #dce4df; border-radius: 9px; background: #f7f9f5; overflow: hidden; }
.header-search form:focus-within { border-color: #82979f; box-shadow: 0 0 0 3px #52677615; }
.header-search .form-control { flex: 1 1 0%; width: 0; min-width: 0; height: 46px; padding: 10px 12px; font-size: 13.718px; line-height: 24px; color: #46515b; }
.header-search .form-control::placeholder { color: #626f79; opacity: 1; }
.header-search .form-control:focus { outline: 0; box-shadow: none; background: transparent; }
.header-search .btn { flex: 0 0 44px; width: 44px; padding: 0; font-size: 15.43275px; color: #526776; border-radius: 0; }
.header-search .btn:hover { background: #eaf0e5; }
@media (max-width: 1199px) {
  .masthead { grid-template-columns: 1fr 1fr; }
  .masthead>.brand-logo { justify-self: start; }
  .masthead>.header-search { position: absolute; right: 28px; bottom: 6px; width: min(235px,55vw); }
  .header-search .form-control { height: 44px; }
}
@media (max-width: 575px) {
  .masthead>.header-search { right: 20px; bottom: 5px; width: min(220px,55vw,calc(100% - 140px)); }
  .header-search .form-control { height: 40px; padding: 8px 10px; }
}

/* Shared reading scale, loaded after layout and brand colours on every route. */
:root {
  --text-body: 14.575375px;
  --text-control: 13.718px;
  --text-small: 12.00325px;
  --text-label: 12.860625px;
}
body { font-size: var(--text-body); line-height: 1.65; }
h1 { font-size: 39.43925px; }
h2 { font-size: 32.58025px; }
h3 { font-size: 25.72125px; }
h4 { font-size: 19.719625px; }
h5, h6 { font-size: 16.290125px; }
small, .small, .form-text, .invalid-feedback { font-size: var(--text-small); }
.preview-note { font-size: 10.2885px; line-height: 1.5; padding-block: 5px; }
.announcement { font-size: 12.860625px; letter-spacing: .025em; }
.header-actions #cart>.dropdown>.btn { font-size: 12.00325px; max-width: 210px; }
.icon-link, .header-actions #cart .btn .fa-cart-shopping { font-size: 18.004875px; }
.locale-options { font-size: 16.290125px; }
.locale-options .btn-link, .locale-options .dropdown-menu { font-size: 13.718px; }
.locale-options>div { width: 205px; }
.header-search .form-control { font-size: 14.575375px; }
.masthead>.header-search { width: min(100%,340px); }
.navigation-row { min-height: 68px; }
.mega-trigger { font-size: 16.2043875px; line-height: 1.5; }
.mega-all { font-size: 14.4039px; }
.mega-kicker, .mega-feature-caption>span:first-child { font-size: 11.70316875px; letter-spacing: 1px; }
.mega-intro h2 { font-size: 27.0073125px; }
.mega-intro p, .mega-explore, .mega-no-subcategories p, .mega-no-subcategories>a { font-size: 14.4039px; }
.mega-group h3 { font-size: 13.50365625px; line-height: 1.5; }
.mega-group>ul>li>a { font-size: 15.30414375px; padding-block: 10px; }
.mega-grandchildren a, .mega-brands a, .mega-brands>span,
.mega-panel-footer>span, .mega-panel-footer>a { font-size: 13.50365625px; }
.mega-feature-caption strong { font-size: 25.206825px; }
.mega-extra-grid strong, .mega-mobile-footer a { font-size: 15.30414375px; }
.mega-mobile-toggle { font-size: 16.2043875px; }

.eyebrow, .hero-copy .eyebrow, .section-heading .eyebrow,
.manifesto .eyebrow, .category-heading .eyebrow { font-size: 11.145875px; letter-spacing: 1px; }
#content.cosmelina-home .hero-copy h1 { font-size: clamp(34.295px,3.258025vw,48.013px); white-space: normal; line-height: 1.15; }
#content.cosmelina-home .hero-copy h1 em { letter-spacing: -1.2px; }
.hero-description { font-size: 15.43275px; max-width: 440px; line-height: 1.75; }
.hero-footnote { font-size: 12.860625px; line-height: 1.6; max-width: none; }
.editorial-button, .selection-section .text-link, .text-link { font-size: 13.718px; white-space: normal; }
.editorial-button { gap: 26px; }
.hero-label>span { font-size: 11.145875px; letter-spacing: 1.4px; }
.hero-label strong { font-size: 28.293375px; }
.hero-label a { font-size: 13.718px; }
.hero-edition { font-size: 10.2885px; letter-spacing: 1px; }
.round-stamp { width: 112px; height: 112px; }
.round-stamp span { font-size: 8.57375px; letter-spacing: .2px; }
.care-strip>span { font-size: 12.860625px; line-height: 1.5; }
.section-heading h2 { font-size: 32.58025px; }
.discovery-index { font-size: 11.145875px; letter-spacing: .6px; }
.discovery-card h3 { font-size: 26.578625px; padding-right: 35px; }
.discovery-card p { font-size: 14.575375px; max-width: calc(100% - 30px); line-height: 1.65; }
.category-pills a { font-size: 13.718px; line-height: 1.5; }
.category-pills a>.category-emoji { margin-left: 0; }
.manifesto h2 { font-size: 39.43925px; }
.manifesto p:not(.eyebrow) { font-size: 15.43275px; max-width: 600px; line-height: 1.8; }
.footer-brand p, .ritual-footer .footer-brand p { font-size: 13.718px; max-width: 320px; line-height: 1.75; }
.ritual-footer h5 { font-size: 15.43275px; font-weight: 600; }
.ritual-footer li { font-size: 13.718px; margin-bottom: 12px; }
.footer-bottom { font-size: 12.00325px; line-height: 1.6; }
.footer-grid { grid-template-columns: 1.7fr 1.3fr 1fr 1fr; gap: 32px; }

.breadcrumb { font-size: 12.860625px; line-height: 1.65; display: flex; flex-wrap: wrap; gap: 6px 0; }
.breadcrumb li { float: none; }
.category-heading h1 { font-size: 44.5835px; line-height: 1.2; overflow-wrap: anywhere; }
.category-intro { font-size: 15.43275px; line-height: 1.75; }
.catalog-toolbar { flex-wrap: wrap; }
.catalog-toolbar label { font-size: 12.860625px; }
.catalog-toolbar select { font-size: 13.718px; }
.catalog-sort { width: 280px; }
.catalog-limit { width: 110px; }
.catalog-view .text-link { font-size: 13.718px; }
.catalog-view .btn { font-size: 14.575375px; min-height: 44px; }
.catalog-pagination p { font-size: 12.860625px; }
.pagination .page-link { font-size: 13.718px; padding: 9px 13px; }
.category-story { font-size: 14.575375px; }
.category-story summary { font-size: 22.29175px; }
.category-story>div, .tab-content { overflow-wrap: anywhere; }
.ritual-product h4, .product-list .product-thumb h4 { font-size: 15.43275px; line-height: 1.5; min-height: 3em; }
.ritual-product .price { font-size: 18.004875px; line-height: 1.45; }
.ritual-product .price-old { font-size: 13.718px; }
.ritual-product .price-tax { display: block; font-size: 12.00325px; }
.product-badge { font-size: 11.145875px; }
.ritual-product .button button { font-size: 13.718px; min-height: 48px; }
.ritual-product .button .product-add { padding: 12px; gap: 8px; }
.ritual-product .button .product-wish { flex: 0 0 44px; width: 44px; font-size: 16.290125px; }
#product-info h1, #product-product #content h1 { font-size: 32.58025px; line-height: 1.25; }
#product-info .list-unstyled { font-size: 14.575375px; }
#product-info .list-unstyled h2 { font-size: 25.72125px; }
#button-cart { font-size: 15.43275px; }
.form-control, .form-select, .input-group-text { font-size: 14.575375px; min-height: 46px; }
.form-label, .col-form-label, .form-check-label, label { font-size: 13.718px; line-height: 1.55; }
.list-group-item { font-size: 14.575375px; }
.btn, .dropdown-menu { font-size: 13.718px; }
.btn-sm { font-size: 12.860625px; }
.btn-lg { font-size: 15.43275px; }
.table, #checkout-cart .table, #cart .dropdown-menu .table { font-size: 13.718px; line-height: 1.55; }
.table td, .table th { overflow-wrap: anywhere; }
.nav-tabs .nav-link { font-size: 14.575375px; }
.tab-content { font-size: 14.575375px; line-height: 1.8; }
.tab-content p, .tab-content li { font-size: inherit; }
.alert, .card-header, .accordion-button { font-size: 14.575375px; line-height: 1.6; }
#account-login h2, #checkout-checkout h2 { font-size: 25.72125px; }
fieldset legend { font-size: 24.0065px; }

@media (min-width: 1200px) and (max-width: 1399px) {
  .mega-trigger { font-size: 14.4039px; }
  .mega-all { font-size: 13.50365625px; }
  .mega-catalog,.mega-topics { gap: 9px; }
  .mega-panel-body { grid-template-columns: 155px minmax(0,1fr) 190px; gap: 20px; }
}
@media (max-width: 1199px) {
  .masthead>.header-search { width: min(260px,55vw); }
  .mega-trigger { font-size: 17.10463125px; }
  .mega-all { font-size: 15.30414375px; }
  .mega-intro p, .mega-explore { font-size: 14.4039px; }
  .mega-group h3 { font-size: 13.50365625px; }
  .mega-group>ul>li>a { font-size: 15.30414375px; }
  .hero-copy { padding: 36px 26px 30px; }
  #content.cosmelina-home .hero-copy h1 { font-size: 37.7245px; }
  .hero-description { font-size: 14.575375px; }
  .care-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .care-strip>span:nth-child(3) { border-left: 0; }
  .footer-grid { grid-template-columns: 1.5fr 1fr; }
}
@media (max-width: 767px) {
  body { font-size: 13.718px; }
  .preview-note { font-size: 9.431125px; }
  .announcement { font-size: 11.145875px; line-height: 1.5; }
  .announcement span { margin-inline: 8px; }
  .header-actions #cart>.dropdown>.btn { font-size: 0; max-width: 40px; }
  .header-actions #cart .btn .fa-cart-shopping, .header-actions .icon-link { font-size: 17.1475px; }
  .header-actions { gap: 11px; }
  .locale-options { font-size: 15.43275px; }
  .masthead>.brand-logo { width: 165px; }
  .navigation-row { min-height: 58px; }
  .masthead>.header-search { right: 20px; bottom: 7px; width: min(240px,55vw,calc(100% - 145px)); }
  .header-search .form-control { font-size: 13.718px; height: 42px; min-height: 42px; }
  .mega-mobile-toggle { font-size: 16.2043875px; }
  .mega-mobile-intro { font-size: 27.90755625px; }
  .mega-panel-footer>a { font-size: 13.50365625px; }
  #content.cosmelina-home .hero-copy h1 { font-size: 34.295px; }
  .hero-copy .eyebrow { font-size: 10.2885px; }
  .hero-footnote { font-size: 12.00325px; }
  .hero-label strong { font-size: 25.72125px; }
  .hero-label>span { font-size: 10.2885px; }
  .hero-label a { font-size: 12.860625px; }
  .hero-label { left: 24px; bottom: 32px; }
  .hero-still-life { min-height: 425px; }
  .round-stamp { width: 90px; height: 90px; right: 18px; bottom: 46px; }
  .round-stamp span { font-size: 6.859px; }
  .hero-edition { font-size: 8.57375px; }
  .care-strip { gap: 20px 15px; }
  .care-strip>span { font-size: 12.00325px; border-left: 0; justify-content: flex-start; }
  .care-strip>span>.category-emoji { margin-inline-end: 2px; }
  .section-heading h2 { font-size: 28.293375px; }
  .discovery-card h3 { font-size: 24.863875px; }
  .discovery-card p { font-size: 13.718px; }
  .discovery-index { font-size: 10.2885px; }
  .category-pills a { font-size: 12.860625px; padding: 10px 13px; }
  .manifesto h2 { font-size: 30.8655px; }
  .manifesto p:not(.eyebrow) { font-size: 14.575375px; max-width: 100%; }
  .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 22px; }
  .footer-brand { grid-column: 1 / -1; }
  .ritual-footer h5 { font-size: 14.575375px; }
  .ritual-footer li { font-size: 13.718px; }
  .footer-bottom { flex-wrap: wrap; font-size: 11.145875px; }
  .category-heading { padding: 27px 24px; }
  #content .category-heading h1 { font-size: 32.58025px; max-width: 100%; }
  .category-intro { font-size: 14.575375px; max-width: 100%; }
  
  .catalog-sort { flex: 1; min-width: 0; width: auto; }
  .catalog-limit { width: 108px; }
  .catalog-pagination { display: block; }
  .catalog-pagination p { margin-top: 15px; }
  .selection-grid { gap: 25px; }
  #product-list:not(.product-list)>.col { width: 50%; }
  .ritual-product h4, .product-list .product-thumb h4 { font-size: 14.575375px; min-height: 4.5em; }
  .ritual-product .price { font-size: 17.1475px; }
  .ritual-product .price-old { font-size: 12.860625px; }
  .ritual-product .button { flex-wrap: wrap; }
  .ritual-product .button .product-add { font-size: 13.718px; flex-basis: calc(100% - 49px); padding: 10px; justify-content: center; }
  .ritual-product .button .product-add>span { display: inline; }
  .ritual-product .button .product-add>i { display: none; }
  .product-badge { font-size: 10.2885px; }
  #product-info h1, #product-product #content h1 { font-size: 27.436px; }
  .nav-tabs .nav-link { font-size: 13.718px; padding: 12px 15px; }
  .table, #checkout-cart .table { font-size: 12.860625px; }
  .category-story summary { font-size: 20.577px; }
}
@media (max-width: 399px) {
  .masthead>.brand-logo { width: 145px; }
  .header-actions { gap: 9px; }
  .selection-grid { grid-template-columns: 1fr; }
  #product-list:not(.product-list)>.col { width: 100%; }
  .ritual-product h4 { min-height: 0; font-size: 15.43275px; }
  .ritual-product .button .product-add { justify-content: space-between; }
  #content.cosmelina-home .hero-copy h1 { font-size: 30.8655px; }
  .round-stamp { right: 12px; bottom: 80px; width: 80px; height: 80px; }
}

/* Keep more specific legacy selectors from reducing the shared reading scale. */
.hero-copy .editorial-button { font-size: 13.718px; }
#content h1 { font-size: 36.00975px; }
#content.cosmelina-home .hero-copy h1 { font-size: clamp(34.295px,3.258025vw,48.013px); }
.eyebrow, .hero-copy .eyebrow, .section-heading .eyebrow, .manifesto .eyebrow,
.category-heading .eyebrow, .hero-label>span, .discovery-index,
.mega-kicker, .mega-feature-caption>span:first-child { font-size: 12.00325px; }

.mega-kicker, .mega-feature-caption>span:first-child{font-size: 12.6034125px;}
.hero-edition { font-size: 12.00325px; }
@media (max-width: 767px) {
  #content h1 { font-size: 30.8655px; }
  #content.cosmelina-home .hero-copy h1 { font-size: 34.295px; }
  #content .category-heading h1 { font-size: 32.58025px; }
  .hero-edition { font-size: 10.2885px; }
  .hero-copy .eyebrow { font-size: 11.145875px; }
}
@media (max-width: 399px) {
  #content.cosmelina-home .hero-copy h1 { font-size: 30.8655px; }
}
.breadcrumb>li.breadcrumb-item { white-space: normal; max-width: 100%; min-width: 0; }
.breadcrumb>li.breadcrumb-item>a { white-space: normal; overflow-wrap: anywhere; }
/* Old catalogue HTML sometimes fixes copy at 10–13px; follow the reader scale. */
.tab-content :is(p,li,div,span,font)[style*="font-size"],
.category-story :is(p,li,div,span,font)[style*="font-size"],
#information-information :is(p,li,div,span,font)[style*="font-size"] { font-size: inherit!important; }
@media (max-width: 479px) {
  .selection-grid { grid-template-columns: 1fr; }
  #product-list:not(.product-list)>.col { width: 100%; }
  .ritual-product h4 { min-height: 0; font-size: 15.43275px; }
  .ritual-product .button .product-add { justify-content: space-between; }
}

/* Slate shopping actions, with the original green reserved for small accents. */
.ritual-product .button { display: grid; grid-template-columns: minmax(0,1fr) 52px; gap: 10px; border: 0; overflow: visible; }
.ritual-product .button .product-add, #button-cart {
  display: flex; align-items: center; justify-content: center; gap: 11px;
  min-width: 0; min-height: 56px; padding: 11px 15px;
  border: 1px solid #526b79; border-radius: 13px;
  background: linear-gradient(135deg,#587482,#405c6d);
  color: #fff; font-size: 13.718px; font-weight: 600; line-height: 1.35;
  box-shadow: 0 5px 12px #405c6d24,inset 0 1px 0 #ffffff24;
  transition: transform .18s,box-shadow .18s,background .18s;
}
.ritual-product .button .product-add:hover, #button-cart:hover,
.ritual-product .button .product-add:focus-visible, #button-cart:focus-visible {
  background: linear-gradient(135deg,#536f7e,#354f60)!important;
  color: #fff!important; transform: translateY(-2px);
  box-shadow: 0 8px 18px #405c6d38,inset 0 1px 0 #ffffff24;
}
.ritual-product .button .product-add:active, #button-cart:active { transform: translateY(0); box-shadow: 0 2px 6px #405c6d24; }
.ritual-product .button .product-add:disabled, #button-cart:disabled { transform: none; opacity: .7; cursor: wait; }
.ritual-product .button .product-add>.cart-action-icon, #button-cart>.cart-action-icon {
  display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px;
  border-radius: 9px; background: #ffffff1c; color: #fff; font-size: 14.575375px;
}
.ritual-product .button .product-add>.cart-action-label { display: block; }
.ritual-product .button .product-add>.cart-action-short { display: none; }
.ritual-product .button .product-wish {
  display: grid; place-items: center; width: 52px; min-height: 56px; padding: 0;
  border: 1px solid #d7e1d1; border-radius: 13px; background: #f1f6ed;
  color: #60775b; font-size: 17.1475px; transition: background .18s,border-color .18s;
}
.ritual-product .button .product-wish:hover { background: #e1edd9; border-color: #a8bf9a; color: #526b4c; }
#button-cart { width: 100%; min-height: 60px; font-size: 15.43275px; border-radius: 14px; padding: 13px 22px; }
.ritual-product .price, #product-info .price-new { font-variant-numeric: tabular-nums; letter-spacing: -.2px; }
@media (min-width: 480px) and (max-width: 1199px) {
  .ritual-product .button .product-add>.cart-action-label { display: none; }
  .ritual-product .button .product-add>.cart-action-short { display: block; }
  .product-list .ritual-product .button .product-add>.cart-action-label { display: block; }
  .product-list .ritual-product .button .product-add>.cart-action-short { display: none; }
}
@media (max-width: 479px) {
  .ritual-product .button .product-add { justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
  .ritual-product .button .product-add, #button-cart { transition: none; }
  .ritual-product .button .product-add:hover, #button-cart:hover { transform: none; }
}
/* Keep full-resolution live originals inside the same thumbnail slots. */
#product-info .image.magnific-popup>a { display: block; }
#product-info .image.magnific-popup>a>img { width: 100%; aspect-ratio: 1; max-height: 700px; object-fit: contain; }
#product-info .image.magnific-popup>div { display: flex; flex-wrap: wrap; gap: 10px; }
#product-info .image.magnific-popup>div>a { display: block; flex: 0 0 80px; }
#product-info .image.magnific-popup>div img { width: 80px; height: 80px; object-fit: contain; }
#shopping-cart .table img.img-thumbnail, #account-wishlist .table img.img-thumbnail { width: 70px; max-width: 70px; height: 70px; object-fit: contain; }
#cart .dropdown-menu .table img { width: 64px; height: 64px; object-fit: contain; }

/* Product detail: original catalogue content, generous photography and readable type. */
#product-info .product-overview { --bs-gutter-x:48px; row-gap:28px; margin-top:25px; margin-bottom:52px!important; align-items:start; }
#product-info .product-gallery-column { flex:0 0 54%; max-width:54%; min-width:0; }
#product-info .product-summary-column { flex:0 0 46%; max-width:46%; min-width:0; }
.product-gallery { position:sticky; top:185px; }
.product-photo-stage { position:relative; padding:20px; background:#eaf1e5; border-radius:90px 22px 22px 22px; }
.product-photo-link { position:relative; display:block; overflow:hidden; border-radius:75px 14px 14px 14px; background:white; }
.product-main-photo { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; background:white; padding:24px; transition:transform .3s ease; }
.product-photo-link:hover .product-main-photo { transform:scale(1.025); }
.product-gallery-flower { position:absolute; z-index:1; right:4px; top:-17px; font:60.01625px/1 Georgia,serif; color:#91b47f; pointer-events:none; }
.product-zoom { position:absolute; bottom:14px; right:14px; display:flex; align-items:center; gap:8px; padding:10px 14px; border:1px solid #dbe3df; border-radius:30px; background:#fffffff2; color:#4d6170; font-size:12.00325px; box-shadow:0 3px 12px #43515d0b; }
.product-thumbnails { display:flex; gap:12px; padding:18px 2px 4px; overflow-x:auto; scrollbar-width:thin; }
.product-thumbnail { display:grid; place-items:center; flex:0 0 88px; height:94px; border:1px solid #dce4df; padding:6px; border-radius:15px; background:#fff; transition:border-color .2s,box-shadow .2s; }
.product-thumbnail img { display:block; width:100%; height:100%; object-fit:contain; }
.product-thumbnail.is-active { border:2px solid #6b838e; box-shadow:0 0 0 3px #edf1f2; padding:5px; }
.product-thumbnail:hover { border-color:#6b838e; }
.product-summary { padding:4px 0 0; display:flex; flex-direction:column; }
.product-kicker { display:flex; align-items:center; gap:9px; margin-bottom:15px; font-size:13.718px; font-weight:600; letter-spacing:.5px; color:#637079; }
.product-kicker>span { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:#edf3e8; font-size:16.290125px; }
.product-kicker a { color:#586d7a; text-decoration:none; }
#product-info #content .product-summary h1 { font-size:clamp(24.863875px,2.3149125vw,35.152375px); line-height:1.2; letter-spacing:-.65px; color:#43515d; margin:0 0 22px; overflow-wrap:anywhere; }
#product-info .product-facts { display:flex; flex-wrap:wrap; gap:8px 20px; color:#65717b; font-size:13.718px; line-height:1.7; margin-bottom:18px; }
.product-facts>li { overflow-wrap:anywhere; }
.product-facts>li:first-child { width:100%; }
.product-facts a { color:#526c7c; }
.product-facts .product-stock { display:flex; align-items:center; flex-wrap:wrap; gap:7px; width:100%; margin-top:5px; color:#596873; }
.product-stock i { color:#748b6a; }
.product-stock strong { font-weight:600; }
#product-info .product-summary .rating { font-size:12.860625px; margin-bottom:6px; }
#product-info .product-summary .rating p { display:flex; align-items:center; gap:3px; flex-wrap:wrap; line-height:1.7; margin-bottom:14px; }
#product-info .product-summary .rating .fa-stack { width:18px; height:22px; line-height:22px; font-size:8.57375px; color:#b4935e; }
#product-info .product-summary .rating a { margin-left:6px; color:#647586; font-size:12.00325px; }
#product-info .product-pricing { padding:20px 24px; border:1px solid #e1e7dd; border-radius:18px; background:linear-gradient(115deg,#f1f5ec,#f7f9f5); margin:4px 0 22px; line-height:1.8; font-size:13.718px; }
#product-info .product-pricing h2 { margin:0; line-height:1.25; }
#product-info .product-pricing .price-new { font-family:inherit; font-size:32.58025px; font-weight:600; line-height:1.3; color:#435d70; }
#product-info .product-pricing .price-old { display:block; font-size:17.1475px; text-decoration:line-through; color:#7a858d; }
.product-secondary-actions { margin-top:4px; }
#product-info .product-secondary-actions .btn-group { display:flex; flex-wrap:wrap; gap:10px; }
#product-info .product-secondary-actions button { display:flex; align-items:center; justify-content:center; gap:9px; min-height:46px; border:1px solid #dce3df; border-radius:12px!important; background:white; color:#62717d; font-size:13.718px; padding:10px 13px; }
#product-info .product-secondary-actions button:hover { background:#f0f4ed; border-color:#b6c8af; }
#product-info .product-secondary-actions button i { font-size:14.575375px; }
#product-info .product-purchase { display:grid; grid-template-columns:100px minmax(0,1fr); align-items:end; gap:14px; }
#product-info .product-quantity label { display:block; margin-bottom:7px; font-size:12.860625px; color:#637079; }
#product-info .product-quantity input { width:100%; height:62px; text-align:center; font-size:17.1475px; border:1px solid #cbd7d4; border-radius:13px; background:white; padding:10px; }
#product-info #button-cart { min-height:62px; padding:14px; font-size:15.43275px; white-space:normal; line-height:1.35; }
.product-purchase>#error-quantity { grid-column:1/-1; margin:0; }
#product-info #product { margin-bottom:6px; }
#product-info #product h3 { font-size:18.86225px; margin:22px 0 18px; }
#product-info #product .form-select,#product-info #product input:not([type=hidden]),#product-info #product textarea { border-radius:12px; }
#product-info #product .form-select { min-height:52px; }
#product-info .product-details { border:1px solid #e1e7df; border-radius:22px; padding:0 32px 26px; margin:20px 0 50px; background:#fff; }
#product-info .product-details>.nav-tabs { display:flex; flex-wrap:wrap; gap:0 25px; border-bottom:1px solid #dde5da; padding:8px 0 0; margin-bottom:28px; }
#product-info .product-details>.nav-tabs .nav-link { border:0; border-bottom:3px solid transparent; border-radius:0; padding:18px 3px 17px; margin:0; font-size:16.290125px; font-weight:500; color:#697580; background:transparent; }
#product-info .product-details>.nav-tabs .nav-link.active { color:#435c6d; border-bottom-color:#91ad82; }
#product-info .product-details .tab-content { padding:0; font-size:15.43275px; line-height:1.85; color:#56636e; overflow-wrap:anywhere; }
#product-info #tab-description { max-width:100%; margin-bottom:0!important; }
#product-info #tab-description p,#product-info #tab-description li,#product-info #tab-description span,#product-info #tab-description font { font-size:inherit!important; line-height:inherit!important; }
#product-info #tab-description p { margin-bottom:18px; }
#product-info #tab-description img { max-width:100%!important; height:auto!important; }
#product-info #tab-description iframe,#product-info #tab-description video { max-width:100%; }
#product-info #tab-description table { display:block; max-width:100%; overflow-x:auto; }
#product-info #tab-description h2 { font-size:24.863875px; line-height:1.4; }
#product-info #tab-description h3 { font-size:21.434375px; line-height:1.4; }
#product-info #tab-review .rating { color:#b4935e; }
.product-photo-link:focus-visible,.product-thumbnail:focus-visible { outline:3px solid #728e9d; outline-offset:4px; }
@media(min-width:1400px) { #product-info .product-overview { --bs-gutter-x:64px; } }
@media(max-width:991.98px) {
  #product-info .product-overview { --bs-gutter-x:28px; }
  #product-info .product-gallery-column,#product-info .product-summary-column { flex-basis:50%; max-width:50%; }
  .product-photo-stage { padding:13px; border-top-left-radius:60px; }
  .product-photo-link { border-top-left-radius:50px; }
  .product-main-photo { padding:14px; }
  #product-info #content .product-summary h1 { font-size:25.72125px; }
  #product-info .product-purchase { grid-template-columns:80px minmax(0,1fr); gap:10px; }
  #product-info #button-cart { font-size:13.718px; padding:10px; gap:8px; }
  .product-zoom span { display:none; }
  #product-info .product-details { padding:0 24px 22px; }
}
@media(max-width:767.98px) {
  #product-info .product-overview { margin-top:16px; margin-bottom:32px!important; row-gap:26px; }
  #product-info .product-gallery-column,#product-info .product-summary-column { flex-basis:100%; max-width:100%; }
  .product-gallery { position:static; }
  .product-photo-stage { padding:14px; border-radius:65px 18px 18px 18px; }
  .product-main-photo { max-height:560px; padding:18px; }
  .product-gallery-flower { font-size:49.72775px; top:-10px; }
  .product-zoom span { display:inline; }
  .product-zoom { font-size:11.145875px; padding:8px 11px; right:10px; bottom:10px; }
  .product-thumbnails { gap:10px; padding-top:14px; }
  .product-thumbnail { flex-basis:74px; height:80px; border-radius:12px; }
  .product-summary { padding:0; }
  .product-kicker { margin-bottom:13px; }
  #product-info #content .product-summary h1 { font-size:27.436px; line-height:1.22; margin-bottom:18px; }
  #product-info .product-facts { font-size:13.718px; gap:6px 16px; }
  #product-info .product-pricing { padding:17px 20px; margin-bottom:19px; }
  #product-info .product-pricing .price-new { font-size:30.8655px; }
  #product-info .product-purchase { grid-template-columns:85px minmax(0,1fr); gap:12px; }
  #product-info #button-cart { font-size:14.575375px; }
  #product-info .product-secondary-actions button { font-size:12.00325px; flex:1; }
  #product-info .product-details { padding:0 18px 20px; margin:12px 0 32px; border-radius:18px; }
  #product-info .product-details>.nav-tabs { gap:0 16px; margin-bottom:22px; }
  #product-info .product-details>.nav-tabs .nav-link { font-size:14.575375px; padding:17px 0 14px; }
  #product-info .product-details .tab-content { font-size:14.575375px; line-height:1.85; }
}
@media(prefers-reduced-motion:reduce) { .product-main-photo,.product-thumbnail { transition:none; } .product-photo-link:hover .product-main-photo { transform:none; } }

/* Keep an honest, neutral image area when no original or gallery image exists. */
#container .product-gallery.product-gallery-empty { display:block; }
.product-photo-empty { min-height:clamp(200px,25vw,280px); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; padding:24px; text-align:center; color:var(--muted); }
.product-photo-empty .fa-image { font-size:2em; opacity:.55; }

/* Checkout presentation only. Core totals, form names and AJAX targets are unchanged. */
.checkout-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; background:#eef4e9; padding:28px 34px; border-radius:3px 65px 3px 3px; margin:0 0 22px; }
.checkout-eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 8px; font-size:12.00325px; letter-spacing:1.8px; color:#64736c; }
.checkout-eyebrow span { font-size:20.577px; letter-spacing:0; }
#checkout-cart #content .checkout-heading h1,#checkout-checkout #content .checkout-heading h1 { font-size:36.00975px; line-height:1.2; margin:0; color:#43515d; }
.checkout-progress { display:flex; align-items:center; flex-wrap:wrap; gap:14px 32px; padding:0; margin:0 0 32px; list-style:none; }
.checkout-progress li { display:flex; align-items:center; gap:9px; color:#72808a; font-size:13.718px; }
.checkout-progress li>span { display:grid; place-items:center; flex:0 0 31px; height:31px; border:1px solid #dbe3df; background:#f7f9f5; border-radius:50%; font-size:12.00325px; }
.checkout-progress li[aria-current] { color:#435e70; font-weight:600; }
.checkout-progress li[aria-current]>span { background:#587482; border-color:#587482; color:white; }
.checkout-progress .is-complete>span { background:#e8f1e1; border-color:#d3e2ca; color:#617b56; }
.cart-layout { display:grid; grid-template-columns:minmax(0,1fr) 330px; align-items:start; gap:30px; }
.cart-main { min-width:0; }
#output-cart { overflow:visible; }
#shopping-cart .cart-products { width:100%; border-collapse:separate; border-spacing:0 14px; margin:-14px 0 20px; font-size:14.575375px; }
#shopping-cart .cart-products thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
#shopping-cart .cart-products tbody { display:block; }
#shopping-cart .cart-product { display:grid; grid-template-columns:112px minmax(0,1fr) auto; gap:14px 20px; align-items:center; margin:0 0 18px; border:1px solid #dde5dc; border-radius:20px; padding:22px; background:#fff; box-shadow:0 4px 16px #43515d05; }
#shopping-cart .cart-product>td { display:block; border:0; padding:0; background:transparent; min-width:0; }
#shopping-cart .cart-photo { grid-row:1/3; align-self:start; }
#shopping-cart .cart-photo img.img-thumbnail { width:112px; max-width:112px; height:130px; border:0; border-radius:14px; object-fit:contain; background:white; padding:5px; }
#shopping-cart .cart-product-name { grid-column:2/4; line-height:1.5; }
#shopping-cart .cart-product-name>a { font-size:16.290125px; font-weight:500; color:#495e6d; }
#shopping-cart .cart-product-name ul { color:#6d7983; margin-top:8px; font-size:12.860625px; line-height:1.65; }
#shopping-cart .cart-product-name small { font-size:inherit; }
#shopping-cart .cart-quantity { grid-column:2; grid-row:2/4; align-self:end; }
#shopping-cart .cart-quantity:before { content:attr(data-label); display:block; margin-bottom:7px; font-size:12.00325px; color:#6b7782; }
#shopping-cart .cart-quantity .input-group { display:flex; flex-wrap:nowrap; gap:7px; max-width:190px; }
#shopping-cart .cart-quantity .form-control { width:65px; flex:0 0 65px; min-width:0; height:48px; min-height:48px; padding:6px; text-align:center; font-size:15.43275px; border-radius:11px!important; border-color:#cfdad5; background:#fff; }
#shopping-cart .cart-quantity .btn { flex:0 0 44px; display:grid; place-items:center; width:44px; min-height:48px; padding:8px; border-radius:11px!important; font-size:14.575375px; }
#shopping-cart .cart-quantity .btn-primary { background:#edf2f4; border:1px solid #d6e0e4; color:#526e80; box-shadow:none; }
#shopping-cart .cart-quantity .btn-danger { background:#fbf0ee; border:1px solid #eddcd9; color:#a2665f; }
#shopping-cart .cart-unit-price { grid-column:3; grid-row:2; font-size:12.860625px; color:#71808a; }
#shopping-cart .cart-unit-price:before { content:attr(data-label); display:block; font-size:11.145875px; margin-bottom:3px; }
#shopping-cart .cart-line-total { grid-column:3; grid-row:3; font-size:19.719625px; font-weight:600; color:#435d70; white-space:nowrap; }
.cart-summary { position:sticky; top:190px; border:1px solid #dae5d5; border-radius:22px; padding:27px; background:linear-gradient(130deg,#edf4e7,#f7f9f5); }
.summary-icon { display:grid; place-items:center; width:49px; height:49px; border-radius:50%; background:white; font-size:21.434375px; margin-bottom:16px; }
#shopping-cart .cart-summary h2 { font-size:25.72125px; margin:0 0 20px; color:#4b5b67; }
#shopping-cart .cart-totals { font-size:14.575375px; margin:0 0 24px; }
#shopping-cart .cart-totals td { border:0; border-top:1px solid #d9e3d3; padding:16px 0; vertical-align:middle; overflow-wrap:anywhere; }
#shopping-cart .cart-totals td:first-child { text-align:left!important; padding-right:16px; }
#shopping-cart .cart-totals td:last-child { color:#435d70; font-weight:600; white-space:nowrap; }
#shopping-cart .cart-totals tr:last-child { font-size:21.434375px; }
#checkout-cart .cart-checkout,#checkout-cart #accordion .btn-primary,#checkout-checkout .btn-primary,#checkout-cart .cart-empty .btn-primary,
#modal-shipping .btn-primary,#modal-payment .btn-primary { display:inline-flex; justify-content:center; align-items:center; gap:12px; padding:14px 20px; min-height:54px; background:linear-gradient(135deg,#587482,#405c6d); border:1px solid #526b79; border-radius:13px; color:white; font-size:14.575375px; font-weight:600; line-height:1.4; box-shadow:0 5px 12px #405c6d16; white-space:normal; }
#checkout-cart .cart-checkout { display:flex; width:100%; min-height:60px; justify-content:space-between; }
#checkout-cart .cart-checkout:hover,#checkout-checkout .btn-primary:hover,#modal-shipping .btn-primary:hover,#modal-payment .btn-primary:hover { background:#3c596b!important; border-color:#3c596b; color:white!important; }
#checkout-checkout .btn-primary:disabled { opacity:.55; }
#shopping-cart .cart-continue { display:inline-flex; align-items:center; gap:12px; padding:13px 18px; min-height:50px; font-size:13.718px; border-radius:12px; background:white; border-color:#d9e2db; color:#5b707e; }
#shopping-cart>.cart-layout .cart-main>h2 { font-size:22.29175px; margin:28px 0 12px; }
#shopping-cart .accordion { margin-bottom:25px; }
#shopping-cart .accordion-item { border-radius:13px; overflow:hidden; margin-bottom:10px; }
#shopping-cart .accordion-button { font-size:14.575375px; padding:19px; background:#f4f7f0; color:#526675; }
.cart-empty { text-align:center; padding:50px 24px 60px; border:1px solid #dfe7db; border-radius:24px; background:linear-gradient(130deg,#eff5e9,#fff); }
.cart-empty-icon { display:grid; place-items:center; width:100px; height:100px; border-radius:50%; margin:0 auto 24px; background:white; font-size:41.154px; }
#shopping-cart .cart-empty h1 { font-size:34.295px; }
#shopping-cart .cart-empty p { font-size:16.290125px; color:#657580; margin:20px 0 28px; }
#checkout-checkout .checkout-layout { --bs-gutter-x:30px; align-items:start; }
#checkout-checkout .checkout-details-column { min-width:0; }
#checkout-checkout .checkout-summary-column { min-width:0; }
#checkout-checkout .checkout-panel { padding:28px; border:1px solid #dee6db; border-radius:20px; background:#fff; margin-bottom:22px; }
#checkout-checkout #checkout-register>form>p:first-child { padding:13px 16px; background:#f0f5eb; border-radius:12px; color:#5f6f7b; margin-bottom:25px; font-size:13.718px; }
#checkout-checkout fieldset { min-width:0; margin-bottom:26px; }
#checkout-checkout fieldset:last-child { margin-bottom:0; }
#checkout-checkout legend { font-family:var(--serif); font-size:24.0065px; color:#465965; margin:0 0 22px; padding-bottom:12px; border-bottom:1px solid #e1e8dd; line-height:1.3; }
#checkout-checkout .form-label,#checkout-checkout .form-check-label { font-size:13.718px; line-height:1.6; color:#5a6d7a; margin-bottom:8px; }
#checkout-checkout .form-control,#checkout-checkout .form-select { font-size:14.575375px; line-height:1.5; min-height:54px; border:1px solid #cedbd2; border-radius:12px; background-color:#fff; color:#4b5d6b; padding:12px 14px; }
#checkout-checkout .form-select { padding-right:38px; }
#checkout-checkout .form-control::placeholder { color:#89949c; opacity:1; }
#checkout-checkout .form-control:focus,#checkout-checkout .form-select:focus { border-color:#7e9bab; box-shadow:0 0 0 3px #6e91a31c; }
#checkout-checkout .form-control.is-invalid,#checkout-checkout .form-select.is-invalid { border-color:#bb756a; }
#checkout-checkout .invalid-feedback { font-size:12.860625px; line-height:1.5; }
#checkout-checkout .form-check { padding-top:4px; padding-bottom:4px; }
#checkout-checkout .form-check-input { width:21px; height:21px; cursor:pointer; border-color:#aebeb5; }
#checkout-checkout .form-check-input:checked { background-color:#587482; border-color:#587482; }
#checkout-checkout .form-switch .form-check-input { width:40px; }
#checkout-checkout .form-check-label { cursor:pointer; }
#checkout-checkout .form-text { font-size:12.860625px; line-height:1.6; }
#checkout-checkout #button-register { min-width:180px; }
#checkout-checkout .checkout-method-panel { background:#fbfcf9; }
#checkout-checkout .checkout-method-panel legend { font-size:22.29175px; }
#checkout-checkout .checkout-method-panel .input-group { display:grid; grid-template-columns:44px minmax(0,1fr); gap:0; }
#checkout-checkout .checkout-method-panel .input-group-text { border:1px solid #cedbd2; border-right:0; border-radius:12px 0 0 12px; background:#edf3e7; color:#687e62; justify-content:center; }
#checkout-checkout .checkout-method-panel .input-group>.form-control { width:100%; min-width:0; border-radius:0 12px 12px 0!important; text-overflow:ellipsis; padding-left:9px; font-size:13.718px; }
#checkout-checkout .checkout-method-panel .input-group>.btn { grid-column:1/-1; border-radius:12px!important; margin:12px 0 0; min-height:48px; justify-self:end; min-width:120px; font-size:13.718px; }
#checkout-checkout #input-comment { resize:vertical; min-height:115px; }
#checkout-checkout .checkout-order-summary { background:#f0f5eb; border-color:#d8e4d0; }
#checkout-checkout .order-summary-title { display:flex; align-items:center; gap:12px; font-size:24.0065px; color:#485e6c; margin:0 0 20px; }
.order-summary-title i { font-size:18.86225px; color:#7d9470; }
#checkout-checkout .order-review { margin:0 0 20px; font-size:13.718px; line-height:1.6; }
#checkout-checkout .order-review thead { background:transparent; color:#70808b; font-size:12.00325px; }
#checkout-checkout .order-review td,#checkout-checkout .order-review th { padding:15px 0; border:0; border-bottom:1px solid #dce5d5; }
#checkout-checkout .order-review td:first-child,#checkout-checkout .order-review th:first-child { padding-right:16px; }
#checkout-checkout .order-review td:last-child { white-space:nowrap; font-weight:600; color:#465f71; }
#checkout-checkout .order-review a { color:#526c7a; }
#checkout-checkout .order-review small { font-size:12.00325px; color:#73808a; }
#checkout-checkout .order-review ul { margin-top:7px; }
.order-item-quantity { color:#73818a; margin-right:4px; }
#checkout-checkout .order-review tfoot tr:last-child { font-size:20.577px; }
#checkout-checkout #checkout-payment .btn { width:100%; min-height:60px; font-size:15.43275px; }
#checkout-checkout .alert,#checkout-cart .alert { border-radius:13px; padding:17px 20px; font-size:13.718px; line-height:1.65; }
#modal-shipping .modal-content,#modal-payment .modal-content { border-radius:20px; border:1px solid #dce5d7; background:white; color:#566a78; box-shadow:0 20px 70px #33465226; }
#modal-shipping .modal-header,#modal-payment .modal-header { background:#f0f5eb; border-radius:20px 20px 0 0; padding:21px 24px; }
#modal-shipping .modal-title,#modal-payment .modal-title { font-size:21.434375px; color:#465d6b; }
#modal-shipping .modal-body,#modal-payment .modal-body { padding:24px; font-size:14.575375px; line-height:1.7; }
#modal-shipping .form-check,#modal-payment .form-check { display:flex; align-items:start; gap:12px; padding:16px; margin-bottom:18px; background:#f7f9f4; border:1px solid #dce5d7; border-radius:13px; }
#modal-shipping input[type=radio],#modal-payment input[type=radio] { flex:0 0 20px; width:20px; height:20px; margin-top:5px; accent-color:#587482; }
#modal-shipping label,#modal-payment label { cursor:pointer; font-size:14.575375px; }
@media(max-width:1199.98px) {
  .cart-layout { grid-template-columns:minmax(0,1fr) 300px; gap:22px; }
  #shopping-cart .cart-product { grid-template-columns:85px minmax(0,1fr) auto; padding:18px; gap:12px; }
  #shopping-cart .cart-photo img.img-thumbnail { width:85px; max-width:85px; height:110px; }
  #checkout-checkout .checkout-panel { padding:22px; }
}
@media(max-width:991.98px) {
  .cart-layout { grid-template-columns:minmax(0,1fr); }
  .cart-summary { position:static; }
  #checkout-checkout .checkout-layout { display:block; }
  #checkout-checkout .checkout-details-column,#checkout-checkout .checkout-summary-column { width:100%; }
  #checkout-checkout .checkout-method-panel .input-group { grid-template-columns:44px minmax(0,1fr) auto; }
  #checkout-checkout .checkout-method-panel .input-group>.btn { grid-column:auto; margin:0 0 0 10px; }
}
@media(max-width:575.98px) {
  .checkout-heading { padding:24px 20px; border-top-right-radius:50px; gap:10px; }
  #checkout-cart #content .checkout-heading h1,#checkout-checkout #content .checkout-heading h1 { font-size:29.15075px; }
  .checkout-eyebrow { font-size:10.2885px; letter-spacing:1.2px; }
  .checkout-progress { gap:8px 15px; margin-bottom:24px; }
  .checkout-progress li { font-size:12.00325px; gap:6px; }
  .checkout-progress li>span { flex-basis:26px; height:26px; font-size:11.145875px; }
  #shopping-cart .cart-product { grid-template-columns:74px minmax(0,1fr); gap:13px; padding:17px; border-radius:17px; }
  #shopping-cart .cart-photo { grid-column:1; grid-row:1; }
  #shopping-cart .cart-photo img.img-thumbnail { width:74px; max-width:74px; height:100px; }
  #shopping-cart .cart-product-name { grid-column:2; grid-row:1; }
  #shopping-cart .cart-product-name>a { font-size:14.575375px; line-height:1.5; }
  #shopping-cart .cart-product-name ul { font-size:12.00325px; margin-top:7px; }
  #shopping-cart .cart-product>td.cart-quantity { grid-column:1/-1; grid-row:2; display:flex; justify-content:space-between; align-items:center; gap:10px; }
  #shopping-cart .cart-quantity:before { font-size:12.860625px; margin:0; }
  #shopping-cart .cart-quantity .input-group { max-width:none; gap:7px; }
  #shopping-cart .cart-quantity .form-control { flex-basis:52px; width:52px; }
  #shopping-cart .cart-product>td.cart-unit-price { grid-column:1/-1; grid-row:3; text-align:left!important; display:flex; align-items:center; justify-content:space-between; padding-top:13px; border-top:1px solid #e5ebe1; font-size:13.718px; }
  #shopping-cart .cart-unit-price:before { font-size:12.00325px; margin:0; }
  #shopping-cart .cart-product>td.cart-line-total { grid-column:1/-1; grid-row:4; display:flex; align-items:center; justify-content:space-between; font-size:20.577px; }
  #shopping-cart .cart-line-total:before { content:attr(data-label); font-size:13.718px; font-weight:400; color:#697b87; }
  .cart-summary { padding:23px; border-radius:18px; }
  #shopping-cart .cart-summary h2 { font-size:24.863875px; }
  #shopping-cart .cart-continue { width:100%; justify-content:center; }
  #checkout-checkout .checkout-panel { padding:20px 17px; border-radius:17px; }
  #checkout-checkout legend { font-size:22.29175px; }
  #checkout-checkout .form-label,#checkout-checkout .form-check-label { font-size:13.718px; }
  #checkout-checkout .checkout-method-panel .input-group { grid-template-columns:40px minmax(0,1fr); }
  #checkout-checkout .checkout-method-panel .input-group>.btn { grid-column:1/-1; width:100%; margin:12px 0 0; }
  #checkout-checkout #button-register { width:100%; }
  #checkout-checkout .order-summary-title { font-size:23.149125px; }
  #checkout-checkout .order-review { font-size:13.718px; }
  #checkout-checkout .order-review td:first-child,#checkout-checkout .order-review th:first-child { padding-right:10px; overflow-wrap:anywhere; }
  #checkout-checkout .order-review tfoot tr:last-child { font-size:19.719625px; }
  #checkout-checkout .table-responsive { overflow:visible; }
  #checkout-checkout .form-check-inline { display:block; margin:0 0 9px; }
  .cart-empty { padding:35px 20px; }
  #shopping-cart .cart-empty h1 { font-size:27.436px; }
}
@media(max-width:359.98px) {
  #shopping-cart .cart-product>td.cart-quantity { display:block; }
  #shopping-cart .cart-quantity:before { margin-bottom:8px; }
  #shopping-cart .cart-quantity .input-group { justify-content:flex-start; }
  .checkout-progress { column-gap:12px; }
}

#checkout-cart #accordion .form-control{min-height:54px;border-radius:12px;font-size:14.575375px;background:white}
#checkout-cart #accordion .col-form-label{font-size:13.718px}
#checkout-cart #accordion .btn-danger{min-height:54px;border-radius:12px;padding:12px 18px;font-size:13.718px;background:#fbf0ee;border:1px solid #eddcd9;color:#9a6058}
#checkout-cart #accordion .text-end{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px}

/* Always-visible delivery/payment choices. */
#checkout-checkout .checkout-method-options { display:grid; gap:9px; margin-top:4px; }
#checkout-checkout .checkout-method-option { position:relative; margin:0; padding:0; min-width:0; border:1px solid #dce3d9; border-radius:7px; background:#fff; }
#checkout-checkout .checkout-method-option.is-selected { border-color:#507052; background:#f2f6ee; }
#checkout-checkout .checkout-method-option>.form-check-input { position:absolute; left:14px; top:19px; margin:0; width:17px; height:17px; z-index:1; }
#checkout-checkout .checkout-method-label { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:5px 12px; width:100%; min-height:54px; margin:0; padding:14px 14px 14px 42px; cursor:pointer; font-weight:500; line-height:1.45; }
#checkout-checkout .checkout-method-price { font-size:12.00325px; font-weight:400; color:#69746b; }
#checkout-checkout .checkout-method-hint { margin:10px 0 0; color:#717b73; font-size:12.00325px; line-height:1.5; }
#checkout-checkout .checkout-method-option.is-pending .checkout-method-label { cursor:default; }
#checkout-checkout .checkout-method-option input:focus-visible + label { outline:2px solid #507052; outline-offset:3px; border-radius:7px; }
#checkout-checkout .checkout-method-option .sameday-locker-map-wrap { margin:0 14px 12px 42px!important; }
#checkout-checkout .checkout-method-retry { padding:0; font-size:inherit; }
#checkout-checkout .checkout-method-option .sameday-locker-details:empty { display:none; }
@media(max-width:575px) {
 #checkout-checkout .checkout-method-label { padding:12px 12px 12px 40px; min-height:52px; }
 #checkout-checkout .checkout-method-option>.form-check-input { left:13px; top:17px; }
 #checkout-checkout .checkout-method-price { flex-basis:100%; }
}
/* Pending prerequisites must not make the always-visible method names unreadable. */
#checkout-checkout .checkout-method-option .form-check-input:disabled ~ .form-check-label { opacity:1; color:#4b5963; }
#checkout-checkout .checkout-method-option .form-check-input:disabled { opacity:.65; }
#checkout-checkout .checkout-method-option.is-pending { background:#fafbf8; }

/* Account presentation: keep core forms, validation, tokens and customer routes. */
.account-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:28px 34px; margin-bottom:28px; border-radius:3px 65px 3px 3px; background:#edf4e7; }
.account-eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 10px; color:#67766d; font-size:12.00325px; letter-spacing:1.7px; }
.account-eyebrow>span { font-size:19.719625px; letter-spacing:0; }
[id^="account-"] #content .account-heading h1 { font-size:36.00975px; line-height:1.2; color:#43515d; margin:0; overflow-wrap:anywhere; }
[id^="account-"].container>.row { --bs-gutter-x:30px; }
[id^="account-"] #content { min-width:0; }
.auth-layout { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); gap:28px; align-items:stretch; }
.auth-panel { position:relative; min-width:0; padding:34px; border:1px solid #dce5d8; border-radius:22px; background:white; }
.account-panel-icon { display:grid; place-items:center; width:50px; height:50px; border-radius:50%; color:#658070; background:#edf4e7; font-size:19.719625px; margin-bottom:20px; }
#account-login .auth-panel h2 { font-size:27.436px; line-height:1.25; margin:0 0 12px; color:#465967; }
#account-login .auth-panel p { color:#677984; font-size:14.575375px; line-height:1.8; }
#account-login .auth-panel .account-intro { font-size:13.718px; margin-bottom:21px; }
#account-login .auth-panel .account-intro strong { font-weight:500; }
.auth-create { background:linear-gradient(135deg,#edf4e7,#f5f8f0); overflow:hidden; display:flex; flex-direction:column; align-items:start; }
.auth-create>.account-panel-icon { background:#fff; }
.auth-botanical { position:absolute; font:201.483125px/1 Georgia,serif; top:-40px; right:-45px; color:#dce9d2; pointer-events:none; }
.auth-create>*:not(.auth-botanical) { position:relative; }
[id^="account-"] .btn-primary { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:54px; padding:13px 22px; border:1px solid #526b79; border-radius:13px; background:linear-gradient(135deg,#587482,#405c6d); font-size:14.575375px; font-weight:600; line-height:1.4; color:white; box-shadow:0 5px 12px #405c6d16; white-space:normal; }
[id^="account-"] .btn-primary:hover { background:#3c596b!important; border-color:#3c596b; color:white!important; }
[id^="account-"] .btn-light { display:inline-flex; align-items:center; justify-content:center; gap:12px; border:1px solid #d5e0d0; border-radius:12px; min-height:50px; padding:12px 19px; font-size:13.718px; color:#597180; background:#fff; white-space:normal; }
[id^="account-"] .btn-light:hover { background:#edf3e8; color:#435e70; }
#account-login .account-login-button { width:100%; min-height:58px; margin-top:10px; justify-content:space-between; }
#account-login .account-register-link { margin-top:auto; width:100%; min-height:56px; justify-content:space-between; }
#account-login .account-forgotten-link { display:inline-block; padding:12px 0 3px; font-size:13.718px; color:#637d8e; text-decoration:underline; text-underline-offset:4px; }
[id^="account-"] .form-control,[id^="account-"] .form-select { min-height:54px; font-size:14.575375px; line-height:1.5; padding:12px 14px; border:1px solid #cedbd2; border-radius:12px; background-color:#fff; color:#4b5e6b; }
[id^="account-"] .form-select { padding-right:38px; }
[id^="account-"] .form-control::placeholder { color:#89959d; opacity:1; }
[id^="account-"] .form-control:focus,[id^="account-"] .form-select:focus { border-color:#7e9bab; box-shadow:0 0 0 3px #6e91a31c; }
[id^="account-"] .form-control.is-invalid,[id^="account-"] .form-select.is-invalid { border-color:#bb756a; }
[id^="account-"] .form-label,[id^="account-"] .col-form-label,[id^="account-"] .form-check-label { color:#5b6d7a; font-size:13.718px; line-height:1.6; }
[id^="account-"] .col-form-label { text-align:left; padding-top:0; padding-bottom:8px; }
[id^="account-"] .invalid-feedback { font-size:12.860625px; line-height:1.6; }
[id^="account-"] .form-text { color:#71818b; font-size:12.860625px; line-height:1.7; }
[id^="account-"] .form-check-input { width:21px; height:21px; cursor:pointer; border-color:#aebfb4; }
[id^="account-"] .form-check-input:checked { background-color:#587482; border-color:#587482; }
[id^="account-"] .form-switch .form-check-input { width:40px; }
[id^="account-"] .form-check-label { cursor:pointer; }
[id^="account-"] .alert { padding:17px 20px; font-size:13.718px; line-height:1.65; border-radius:13px; }
[id^="account-"] #content>form:not(#form-login) { padding:30px; border:1px solid #dce5d8; border-radius:22px; background:#fff; margin-bottom:24px; }
[id^="account-"] fieldset { min-width:0; margin-bottom:26px; }
[id^="account-"] fieldset:last-of-type { margin-bottom:22px; }
[id^="account-"] legend { font-size:24.0065px; line-height:1.35; color:#4c6270; margin-bottom:22px; padding:0 0 12px; border-bottom:1px solid #dfe8d9; }
[id^="account-"] #content>p { font-size:14.575375px; color:#657884; line-height:1.8; margin:0 0 24px; }
#account-register #content>p { padding:15px 20px; border-radius:13px; background:#f2f6ed; }
#account-register #form-register>fieldset>.row>label,#account-edit #form-customer>fieldset>.row>label,#account-forgotten #form-forgotten>fieldset>.row>label,#account-address #form-address>fieldset>.row>label { width:100%; }
#account-register #form-register>fieldset>.row>.col-sm-10,#account-edit #form-customer>fieldset>.row>.col-sm-10,#account-forgotten #form-forgotten>fieldset>.row>.col-sm-10,#account-address #form-address>fieldset>.row>.col-sm-10 { width:100%; }
#account-register #form-register { max-width:900px; margin-left:auto; margin-right:auto; }
#account-register #account { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; }
#account-register #account>legend { grid-column:1/-1; }
#account-register #account>.row { display:block; margin-left:0; margin-right:0; }
#account-register #account>.row>* { padding-left:0; padding-right:0; }
#account-register #account>.custom-field { grid-column:1/-1; }
#account-register #form-register>fieldset:not(#account) { padding:22px 24px 5px; background:#f8faf5; border:1px solid #e4ebdf; border-radius:16px; }
#account-register #form-register>fieldset:not(#account)>legend { float:none; width:auto; padding:0 7px; margin:0 0 14px; border:0; font-size:21.434375px; }
#account-register #form-register>.text-end { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; }
#account-register #form-register>.text-end>.form-check { flex:1 1 300px; margin:0; text-align:left; padding-right:50px; }
#account-register #form-register>.text-end>.btn { flex:0 0 auto; min-width:170px; }
.account-welcome { font-size:15.43275px; line-height:1.5; margin:12px 0 0; color:#657880; }
.account-dashboard-heading .account-logout { flex:0 0 auto; }
#account-account #content>h2 { font-size:25.72125px; color:#4b6170; margin:34px 0 20px; }
.account-link-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; padding:0; margin:0 0 25px; }
.account-link-grid>li { min-width:0; }
.account-link-grid>li>a { position:relative; display:flex; align-items:center; gap:15px; height:100%; min-height:110px; padding:22px; border:1px solid #dce5d8; border-radius:17px; background:white; color:#536b7a; transition:border-color .2s,box-shadow .2s,transform .2s; }
.account-link-grid>li:nth-child(3n+2)>a { background:#f8faf5; }
.account-link-grid>li>a:hover { transform:translateY(-2px); border-color:#a8c29a; box-shadow:0 6px 16px #475b6b0b; }
.account-link-icon { display:grid; place-items:center; flex:0 0 45px; height:45px; border-radius:13px; color:#758d6a; background:#edf4e7; font-size:18.004875px; }
.account-link-grid>li:nth-child(3n+2) .account-link-icon { color:#647c8b; background:#edf1f3; }
.account-link-grid>li:nth-child(3n) .account-link-icon { color:#a38577; background:#f6eee7; }
.account-link-label { flex:1; font-size:14.575375px; line-height:1.55; overflow-wrap:anywhere; }
.account-link-arrow { font-size:11.145875px; color:#a0afb6; }
[id^="account-"] .table { font-size:13.718px; line-height:1.6; border-color:#dce5d8; }
[id^="account-"] .table thead { background:#eef4e8; }
[id^="account-"] .table td,[id^="account-"] .table th { padding:16px 12px; }
[id^="account-"] .table-responsive { border:1px solid #dce5d8; border-radius:16px; margin-bottom:22px; }
[id^="account-"] .list-group { border:1px solid #dce5d8; border-radius:17px; overflow:hidden; background:#f8faf5; }
[id^="account-"] .list-group-item { font-size:13.718px; padding:15px 17px; line-height:1.5; color:#5b7281; border-width:0 0 1px; }
[id^="account-"] .list-group-item:last-child { border-bottom:0; }
[id^="account-"] .list-group-item:hover { background:#edf4e7; }
@media(max-width:1199.98px) {
  .auth-panel { padding:28px; }
  .account-link-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:767.98px) {
  .auth-layout { grid-template-columns:minmax(0,1fr); gap:22px; }
  .auth-panel { padding:27px; }
  .auth-create { min-height:300px; }
  .account-heading { padding:25px; border-top-right-radius:55px; }
  [id^="account-"] #content .account-heading h1 { font-size:30.8655px; }
  #account-register #account { grid-template-columns:minmax(0,1fr); }
  [id^="account-"] #content>form:not(#form-login) { padding:24px; }
  .account-link-grid>li>a { padding:19px; }
}
@media(max-width:575.98px) {
  .account-heading { padding:23px 20px; gap:12px; margin-bottom:24px; }
  [id^="account-"] #content .account-heading h1 { font-size:28.293375px; }
  .account-eyebrow { font-size:10.2885px; letter-spacing:1.2px; margin-bottom:8px; }
  .auth-panel { padding:23px 20px; border-radius:18px; }
  #account-login .auth-panel h2 { font-size:24.863875px; }
  #account-login .auth-panel p { font-size:14.575375px; }
  [id^="account-"] #content>form:not(#form-login) { padding:23px 18px; border-radius:18px; }
  [id^="account-"] legend { font-size:22.29175px; }
  #account-register #form-register>fieldset:not(#account) { padding:18px 16px 3px; }
  #account-register #form-register>fieldset:not(#account)>legend { font-size:20.577px; }
  #account-register #form-register>.text-end { display:block; }
  #account-register #form-register>.text-end>.form-check { display:block; margin-bottom:22px; line-height:1.7; }
  #account-register #form-register>.text-end>.btn { width:100%; }
  #account-account .account-dashboard-heading { flex-wrap:wrap; }
  .account-welcome { font-size:14.575375px; }
  .account-dashboard-heading .account-logout { padding:9px 13px; min-height:45px; font-size:12.860625px; margin-top:4px; }
  .account-link-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
  .account-link-grid>li>a { min-height:86px; padding:18px; border-radius:15px; }
  .account-link-label { font-size:14.575375px; }
  #account-account #content>h2 { font-size:24.0065px; margin-top:29px; }
  [id^="account-"] .table td,[id^="account-"] .table th { padding:12px 10px; }
  [id^="account-"] #content>form>.row:last-child .btn { padding-left:16px; padding-right:16px; }
}
@media(prefers-reduced-motion:reduce) { .account-link-grid>li>a { transition:none; } .account-link-grid>li>a:hover { transform:none; } }

#account-register #account>.account-email-field{grid-column:1/-1}

/* Saved products and historical orders: display supplied values without recalculation. */
.collection-page-actions { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:15px; margin:28px 0 6px; }
.collection-empty { text-align:center; padding:45px 25px; border:1px solid #dce5d8; border-radius:22px; background:linear-gradient(135deg,#f2f7ec,#fff); }
.collection-empty-icon { display:grid; place-items:center; width:90px; height:90px; border-radius:50%; background:white; margin:0 auto 22px; font-size:33.437625px; }
#account-wishlist .collection-empty h2,#account-order .collection-empty h2 { font-size:26.578625px; line-height:1.3; color:#4d626f; margin:0 0 16px; }
.collection-empty p { font-size:15.43275px; line-height:1.8; color:#6b7b85; margin:0; }
.wishlist-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.saved-product { display:flex; flex-direction:column; min-width:0; border:1px solid #dce5d8; border-radius:23px; overflow:hidden; background:#fff; }
.saved-product-photo { position:relative; padding:14px; background:#eaf1e4; border-radius:0 0 24px 0; }
.saved-product:nth-child(3n+2) .saved-product-photo { background:#edf1f2; }
.saved-product:nth-child(3n) .saved-product-photo { background:#f2efe8; }
.saved-product-photo>a { display:block; border-radius:40px 13px 13px 13px; background:white; overflow:hidden; }
.saved-product-photo img { display:block; width:100%; height:auto; aspect-ratio:1.12; object-fit:contain; padding:18px; background:white; }
.saved-product-heart { position:absolute; display:grid; place-items:center; right:24px; top:24px; width:37px; height:37px; border:1px solid #e2e9df; background:#fffffff0; border-radius:50%; color:#91a482; font-size:13.718px; pointer-events:none; }
.saved-product-content { display:flex; flex-direction:column; flex:1; padding:23px; }
#account-wishlist .saved-product h2 { margin:0 0 17px; font-family:var(--sans); font-size:17.1475px; line-height:1.55; font-weight:500; overflow-wrap:anywhere; }
.saved-product h2 a { color:#506777; }
.saved-product-facts { display:flex; flex-wrap:wrap; gap:7px 18px; margin:0 0 18px; font-size:12.860625px; line-height:1.7; }
.saved-product-facts>div { display:flex; flex-wrap:wrap; gap:5px; }
.saved-product-facts dt { color:#7b8992; font-weight:400; }
.saved-product-facts dt:after { content:':'; }
.saved-product-facts dd { color:#5d7380; margin:0; overflow-wrap:anywhere; }
.saved-product-price { display:flex; align-items:baseline; flex-wrap:wrap; gap:11px; margin:auto 0 20px; padding-top:2px; color:#435e70; font-size:21.434375px; font-variant-numeric:tabular-nums; }
.saved-product-price strong { font-weight:600; }
.saved-product-price s { color:#87939a; font-size:14.575375px; font-weight:400; }
.saved-product-actions { display:flex; flex-direction:column; gap:10px; }
#account-wishlist .saved-product-actions .btn-primary { width:100%; min-height:56px; padding:12px 14px; font-size:14.575375px; }
#account-wishlist .saved-product-actions .cart-action-icon { display:grid; place-items:center; flex:0 0 29px; height:29px; border-radius:8px; background:#ffffff1c; }
#account-wishlist .saved-product-actions .btn-danger { display:flex; align-items:center; justify-content:center; gap:9px; min-height:44px; border-radius:11px; font-size:12.860625px; line-height:1.4; padding:9px 14px; background:white; border:1px solid #e4ded9; color:#9a7b70; box-shadow:none; }
#account-wishlist .saved-product-actions .btn-danger:hover { background:#faf1ed; color:#805e52; border-color:#cfb3a6; }
.customer-order-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:23px; margin-bottom:28px; }
.customer-order-card { min-width:0; border:1px solid #dce5d8; border-radius:21px; padding:25px; background:white; }
.customer-order-top { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:15px; margin-bottom:25px; }
.customer-order-identity { display:flex; align-items:center; gap:13px; }
.customer-order-icon { display:grid; place-items:center; width:49px; height:49px; border-radius:14px; background:#edf4e7; color:#829776; font-size:19.719625px; }
.customer-order-card:nth-child(2n) .customer-order-icon { background:#edf1f3; color:#7a919e; }
.customer-order-identity p { color:#7a8993; font-size:12.00325px; line-height:1.4; margin:0 0 2px; }
#account-order .customer-order-identity h2 { font-family:var(--sans); color:#4e6575; font-weight:600; font-size:21.434375px; line-height:1.2; margin:0; }
.customer-order-identity h2 a { color:inherit; }
.customer-order-status { display:inline-block; max-width:100%; padding:8px 13px; border-radius:30px; background:#f0f4ec; border:1px solid #e0e8d9; color:#617787; font-size:12.860625px; line-height:1.5; overflow-wrap:anywhere; }
.customer-order-facts { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.7fr) minmax(0,1fr); gap:13px; padding:18px 0 22px; margin:0; border-top:1px solid #e2e9de; }
.customer-order-facts dt { font-size:12.00325px; font-weight:400; line-height:1.5; color:#7c8a93; margin-bottom:9px; }
.customer-order-facts dd { font-size:14.575375px; line-height:1.4; color:#5b7281; margin:0; overflow-wrap:anywhere; }
.customer-order-facts .customer-order-total dd { color:#435e70; font-size:19.719625px; font-weight:600; font-variant-numeric:tabular-nums; }
#account-order .customer-order-view { display:flex; justify-content:space-between; width:100%; border-color:#d8e2d3; background:#f7faf3; font-size:13.718px; min-height:51px; }
#account-order .customer-order-view:hover { background:#edf4e7; }
.order-detail-status { font-size:14.575375px; color:#6b7e89; margin:12px 0 0; }
.order-info-panel { height:100%; padding:23px 25px; border:1px solid #dce5d8; border-radius:17px; background:#fff; font-size:14.575375px; line-height:1.85; color:#607582; overflow-wrap:anywhere; }
.order-info-panel>.lead { display:inline-block; margin-bottom:8px; font-size:15.43275px; font-weight:500; color:#4c6575; }
.order-detail-meta .order-info-panel { background:#f3f7ee; }
.order-detail-methods .order-info-panel { background:#fafbf8; }
.order-products-wrap { margin:15px 0 22px; }
#account-order .order-products-table { border:0; margin:0; font-size:14.575375px; width:100%; }
#account-order .order-products-table>thead { background:#edf4e7; }
#account-order .order-products-table>thead th { border:0; padding:18px; font-size:12.860625px; color:#71858f; font-weight:500; }
#account-order .order-products-table>tbody>tr>td { padding:23px 18px; border-width:0 0 1px; border-color:#dde6d8; background:white; vertical-align:middle; }
#account-order .order-product-name>a { color:#4e6879; font-size:16.290125px; line-height:1.55; }
#account-order .order-product-name ul { color:#758690; font-size:12.860625px; line-height:1.75; margin-top:10px; }
#account-order .order-product-name small { font-size:inherit; }
#account-order .order-product-total { font-size:18.004875px; font-weight:600; color:#496375; white-space:nowrap; }
#account-order .order-product-actions .d-grid { gap:9px; }
#account-order .order-product-actions .btn { font-size:12.860625px; min-height:46px; padding:10px 13px; margin:0!important; border-radius:11px; }
#account-order .order-product-actions .btn-danger { display:flex; align-items:center; justify-content:center; background:#faf1ed; color:#98776b; border:1px solid #e9dcd5; white-space:normal; }
#account-order .order-product-actions .btn-danger:hover { background:#f3e5de; border-color:#d4bdb1; }
.order-totals-panel { margin:0 0 28px auto; max-width:470px; padding:14px 25px; border:1px solid #dae6d1; border-radius:18px; background:linear-gradient(135deg,#edf4e7,#f7f9f4); }
#account-order .order-totals-panel .table { margin:0; }
#account-order .order-totals-panel th,#account-order .order-totals-panel td { padding:14px 0; font-size:14.575375px; color:#657986; font-weight:400; border-color:#dde6d5; }
#account-order .order-totals-panel th { padding-right:18px; }
#account-order .order-totals-panel td { white-space:nowrap; font-variant-numeric:tabular-nums; }
#account-order .order-totals-panel tr:last-child th,#account-order .order-totals-panel tr:last-child td { border:0; font-size:19.719625px; font-weight:600; color:#435f71; }
#account-order.order-detail-page #content>h2 { font-size:25.72125px; color:#526b7a; margin:35px 0 22px; }
.order-history-wrap { padding:3px 20px; border:1px solid #dce5d8; border-radius:17px; background:white; margin-bottom:22px; }
#account-order .order-history-table { margin:0; font-size:13.718px; }
#account-order .order-history-table thead { background:transparent; color:#7c8d95; font-size:12.00325px; }
#account-order .order-history-table th,#account-order .order-history-table td { padding:18px 12px; border-width:0 0 1px; border-color:#e0e8da; }
#account-order .order-history-table tr:last-child td { border-bottom:0; }
.order-history-status>span { display:inline-block; padding:6px 12px; border-radius:30px; background:#f0f5eb; color:#687d89; font-size:12.860625px; }
@media(max-width:1199.98px) {
  .wishlist-grid { gap:20px; }
  .saved-product-content { padding:20px; }
  #account-wishlist .saved-product h2 { font-size:15.43275px; }
  #account-wishlist .saved-product-actions .btn-primary { font-size:13.718px; }
  .customer-order-card { padding:22px; }
}
@media(max-width:991.98px) {
  .wishlist-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customer-order-list { grid-template-columns:minmax(0,1fr); }
  #account-order .order-products-table thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  #account-order .order-products-table,#account-order .order-products-table tbody { display:block; }
  #account-order .order-product-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; padding:23px; border:1px solid #dce5d8; border-radius:18px; margin-bottom:20px; background:white; }
  #account-order .order-products-table>tbody>tr>td { display:block; padding:0; border:0; min-width:0; }
  #account-order .order-product-row .order-product-name { grid-column:1/-1; }
  #account-order .order-product-row .order-product-actions { grid-column:1/-1; }
  .order-product-quantity:before,.order-product-price:before,.order-product-total:before { content:attr(data-label); display:block; font-size:12.00325px; font-weight:400; color:#7c8c95; margin-bottom:7px; }
  #account-order .order-product-actions .d-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:575.98px) {
  .wishlist-grid { grid-template-columns:minmax(0,1fr); gap:23px; }
  .saved-product-content { padding:22px; }
  #account-wishlist .saved-product h2 { font-size:17.1475px; }
  .saved-product-photo img { aspect-ratio:1.2; padding:20px; }
  .saved-product-facts { font-size:13.718px; }
  #account-wishlist .saved-product-actions .btn-primary { font-size:14.575375px; }
  .saved-product-actions { flex-direction:row; align-items:stretch; gap:10px; }
  #account-wishlist .saved-product-actions .btn-primary { flex:1; }
  #account-wishlist .saved-product-actions .btn-danger { flex:0 0 50px; font-size:15.43275px; }
  #account-wishlist .saved-product-actions .btn-danger>span { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  .collection-page-actions { flex-direction:column; align-items:stretch; }
  .collection-page-actions>.btn { width:100%; }
  .collection-empty { padding:32px 20px; border-radius:18px; }
  #account-wishlist .collection-empty h2,#account-order .collection-empty h2 { font-size:24.0065px; }
  .collection-empty p { font-size:14.575375px; }
  .customer-order-card { padding:22px 19px; border-radius:18px; }
  .customer-order-top { gap:14px 12px; }
  .customer-order-icon { width:44px; height:44px; font-size:18.004875px; }
  .customer-order-identity { gap:10px; }
  .customer-order-status { font-size:12.00325px; padding:7px 11px; }
  .customer-order-facts { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px 16px; }
  .customer-order-facts .customer-order-total { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:15px; padding-top:17px; border-top:1px solid #e0e8dc; }
  .customer-order-facts .customer-order-total dt { margin:0; font-size:13.718px; }
  .customer-order-facts .customer-order-total dd { font-size:22.29175px; }
  .order-detail-meta,.order-detail-addresses,.order-detail-methods { flex-direction:column; }
  .order-info-panel { padding:20px; font-size:14.575375px; border-radius:15px; }
  .order-totals-panel { max-width:none; padding:10px 20px; }
  #account-order .order-totals-panel th,#account-order .order-totals-panel td { font-size:13.718px; }
  #account-order .order-totals-panel tr:last-child th,#account-order .order-totals-panel tr:last-child td { font-size:19.719625px; }
  #account-order .order-product-row { padding:20px; gap:19px 12px; }
  #account-order .order-product-name>a { font-size:15.43275px; }
  #account-order .order-product-total { font-size:16.290125px; }
  #account-order .order-product-name ul { font-size:12.860625px; }
  .order-history-wrap { padding:8px 20px; }
  #account-order .order-history-table,#account-order .order-history-table tbody { display:block; }
  #account-order .order-history-table thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  #account-order .order-history-table tbody>tr { display:flex; flex-wrap:wrap; gap:10px; padding:20px 0; border-bottom:1px solid #e0e8da; }
  #account-order .order-history-table tbody>tr:last-child { border-bottom:0; }
  #account-order .order-history-table tbody>tr>td { display:block; border:0; padding:0; }
  .order-history-date { color:#7a8b94; font-size:12.860625px; }
  .order-history-status { margin-left:auto; }
  .order-history-comment { order:3; flex-basis:100%; line-height:1.8; overflow-wrap:anywhere; }
}
@media(max-width:359.98px) {
  .saved-product-content { padding:18px; }
  #account-wishlist .saved-product-actions .btn-primary { padding:11px 10px; font-size:13.718px; gap:8px; }
  #account-wishlist .saved-product-actions .cart-action-icon { display:none; }
  #account-order .order-product-actions .d-grid { grid-template-columns:minmax(0,1fr); }
}
@media(min-width:992px) {
  #account-order .order-products-table thead th:nth-child(2){min-width:125px;white-space:nowrap}
  #account-order .order-products-table thead th:nth-child(3){min-width:145px;white-space:nowrap}
  #account-order .order-products-table thead th:nth-child(4){min-width:95px;white-space:nowrap}
  #account-order .order-products-table .order-product-actions{width:215px;min-width:215px}
}
#account-order .pagination{display:flex;flex-wrap:wrap;gap:7px}
#account-order .pagination .page-link{display:grid;place-items:center;min-width:44px;min-height:44px;border-radius:10px;border-color:#d8e2d2;color:#5e798b;font-size:13.718px}
#account-order .pagination .active>.page-link{background:#587482;border-color:#587482;color:white}

/* Presentation only: source articles, contact data and form endpoints stay intact. */
.information-heading { display:flex; align-items:center; justify-content:space-between; gap:26px; padding:30px 36px; margin-bottom:28px; border-radius:3px 65px 3px 3px; background:linear-gradient(115deg,#edf4e7,#f5f8ef); }
.information-heading>div { min-width:0; }
.information-eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 10px; color:#65766f; font-size:12.00325px; letter-spacing:1.7px; }
.information-eyebrow>span { font-size:20.577px; letter-spacing:0; }
:is(#information-information,#information-contact) #content .information-heading h1 { margin:0; color:#43515d; font-size:36.00975px; line-height:1.2; overflow-wrap:anywhere; }
:is(#information-information,#information-contact) #content { min-width:0; }
.information-article { position:relative; max-width:1040px; margin:0 auto; padding:38px 52px 44px; border:1px solid #dce5d8; border-top:3px solid #c2d5b7; border-radius:22px; background:white; box-shadow:0 8px 30px #53665106; }
.information-copy { color:#52616d; font-size:15.43275px; line-height:1.85; overflow-wrap:anywhere; }
.information-copy :is(p,div,li,span,font) { font-size:inherit; line-height:inherit; color:inherit; }
.information-copy :is(p,li,div,span,font)[style] { color:inherit!important; font-family:inherit!important; line-height:inherit!important; }
.information-copy p { margin:0 0 1.15em; }
.information-copy p:empty,.information-copy p:has(>br:only-child) { display:none; }
.information-copy>:last-child { margin-bottom:0; }
#information-information #content .information-copy :is(h1,h2,h3,h4,h5,h6) { color:#465e6e; font-weight:500; line-height:1.35; text-transform:none; margin:1.4em 0 .65em; overflow-wrap:anywhere; }
#information-information #content .information-copy :is(h1,h2) { font-size:24.863875px; padding:16px 20px; border-left:3px solid #b8cfa9; border-radius:0 14px 14px 0; background:#f3f7ee; }
#information-information #content .information-copy h3 { font-size:21.434375px; }
#information-information #content .information-copy :is(h4,h5,h6) { font-size:18.86225px; }
#information-information #content .information-copy>:is(h1,h2,h3):first-of-type { margin-top:0; }
.information-copy :is(ul,ol) { padding-left:1.5em; margin-bottom:1.4em; }
.information-copy li { padding-left:.25em; margin-bottom:.55em; }
.information-copy li::marker { color:#7e9475; }
.information-copy :is(b,strong) { color:#435b6c; font-weight:600; }
.information-copy a { color:#506f87!important; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; overflow-wrap:anywhere; }
.information-copy a:hover { color:#354f63!important; }
.information-copy img { max-width:100%!important; height:auto!important; border-radius:14px; }
.information-copy :is(iframe,video) { max-width:100%; }
.information-copy table { display:block; max-width:100%; overflow-x:auto; border-color:#dce5d8; font-size:14.575375px; }
.information-copy :is(td,th) { padding:13px; border-color:#dce5d8; }
.information-copy blockquote { padding:22px 25px; background:#f3f7ee; border-left:3px solid #b8cfa9; border-radius:0 14px 14px 0; }
.contact-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:28px; align-items:start; }
.contact-details { min-width:0; }
.contact-location-panel { padding:30px; border:1px solid #dce5d8; border-radius:22px; background:linear-gradient(135deg,#f0f5e9,#fafbf7); }
.contact-panel-icon { display:grid; place-items:center; width:54px; height:54px; margin-bottom:20px; color:#75896c; border:1px solid #dce5d8; border-radius:16px; background:white; font-size:20.577px; }
#information-contact #content h2 { color:#4b6271; font-size:24.863875px; line-height:1.3; margin:0 0 22px; }
#information-contact .contact-store { background:transparent; border:0; margin:0!important; box-shadow:none; }
#information-contact .contact-store .card-body { padding:0; }
#information-contact .contact-store .row { display:grid; grid-template-columns:minmax(0,1fr); gap:23px; margin:0; }
#information-contact .contact-store .row>div { width:100%; padding:0; font-size:15.43275px; line-height:1.8; color:#526673; overflow-wrap:anywhere; }
#information-contact .contact-store .row>div:empty { display:none; }
#information-contact .contact-store strong { font-weight:600; color:#465e6e; }
#information-contact .contact-store address { font-size:15.43275px; line-height:1.8; margin:8px 0 0; }
#information-contact .contact-public-email { margin:12px 0 0; }
#information-contact .contact-public-email a { color:#506f87; text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
#information-contact .contact-store .contact-public-company { display:flex; align-items:center; gap:12px; padding-top:20px; border-top:1px solid #dce5d8; }
#information-contact .contact-public-company i { flex:0 0 auto; color:#7e9474; }
#information-contact .img-thumbnail { max-width:100%; border-radius:15px; border-color:#dce5d8; padding:5px; }
#information-contact #form-contact { padding:32px; border:1px solid #dce5d8; border-radius:22px; background:white; min-width:0; }
#information-contact fieldset { min-width:0; }
#information-contact legend { display:flex; align-items:center; gap:13px; margin-bottom:26px; padding-bottom:20px; border-bottom:1px solid #e2e9dd; font-size:24.863875px; line-height:1.35; color:#4b6271; }
#information-contact legend i { color:#829775; font-size:19.719625px; }
#information-contact #form-contact .row>label { width:100%; text-align:left; font-size:14.575375px; color:#536b7b; padding-top:0; padding-bottom:9px; }
#information-contact #form-contact .row>.col-sm-10 { width:100%; }
#information-contact #form-contact .row.mb-3 { margin-bottom:23px!important; }
#information-contact .form-control { min-height:54px; padding:12px 14px; border:1px solid #cedbd2; border-radius:12px; background-color:white; color:#4b5e6b; font-size:14.575375px; line-height:1.5; }
#information-contact textarea.form-control { min-height:220px; resize:vertical; }
#information-contact .form-control:focus { border-color:#7e9bab; box-shadow:0 0 0 3px #6e91a31c; }
#information-contact .form-control.is-invalid { border-color:#bb756a; }
#information-contact .invalid-feedback { font-size:12.860625px; line-height:1.6; }
#information-contact .btn { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:54px; padding:13px 22px; border-radius:13px; font-size:14.575375px; font-weight:600; line-height:1.4; white-space:normal; }
#information-contact .btn-primary { background:linear-gradient(135deg,#587482,#405c6d); border:1px solid #526b79; color:white; box-shadow:0 5px 12px #405c6d16; }
#information-contact .btn-primary:hover { background:#3c596b!important; border-color:#3c596b; color:white!important; }
#information-contact .btn-info,#information-contact .btn-outline-secondary { margin-top:18px; border:1px solid #c8d8c0; background:white; color:#526c7c; }
#information-contact .btn-info:hover,#information-contact .btn-outline-secondary:hover { background:#e9f0e4; color:#435e70; }
#information-contact #accordion { margin-top:24px; border:1px solid #dce5d8; border-radius:17px; overflow:hidden; }
#information-contact .contact-stores-heading { margin:28px 0 16px!important; }
#information-contact .accordion-item { border:0; border-bottom:1px solid #dce5d8; }
#information-contact .accordion-item:last-child { border-bottom:0; }
#information-contact .accordion-header { margin:0!important; }
#information-contact .accordion-button { padding:20px; color:#526c7c; background:#f3f7ee; font-size:15.43275px; line-height:1.5; gap:12px; overflow-wrap:anywhere; }
#information-contact .accordion-button:focus { box-shadow:inset 0 0 0 2px #7e9bab; }
#information-contact .accordion-body { padding:23px; font-size:14.575375px; line-height:1.8; overflow-wrap:anywhere; }
#information-contact .accordion-body .row { display:grid; grid-template-columns:minmax(0,1fr); gap:20px; }
#information-contact .accordion-body .row>div { width:100%; }
#account-return #form-return>fieldset>.row>label { width:100%; }
#account-return #form-return>fieldset>.row>.col-sm-10 { width:100%; }
#account-return #form-return { max-width:960px; margin-left:auto; margin-right:auto; }
#account-return #form-return>fieldset { padding-bottom:15px; }
#account-return #input-reason { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
#account-return #input-reason .form-check { position:relative; padding:0; margin:0; }
#account-return #input-reason input { position:absolute; left:16px; top:18px; margin:0; }
#account-return #input-reason label { display:flex; align-items:center; min-height:60px; height:100%; padding:15px 16px 15px 49px; border:1px solid #dce5d8; border-radius:12px; background:#fafbf7; }
#account-return #input-reason input:checked+label { border-color:#829bab; background:#eef3f6; color:#435e70; }
#account-return #input-reason input:focus-visible+label { outline:2px solid #6e91a3; outline-offset:2px; }
#account-return #form-return>.row:last-child { align-items:end; gap:16px 0; }
#account-return #form-return>.row:last-child .form-check { display:block; text-align:left; margin:0 0 20px; }
@media(max-width:991.98px) {
  .contact-layout { grid-template-columns:minmax(0,1fr); }
  .information-article { padding:32px; }
}
@media(max-width:575.98px) {
  .information-heading { padding:23px 20px; gap:12px; border-top-right-radius:55px; margin-bottom:24px; }
  :is(#information-information,#information-contact) #content .information-heading h1 { font-size:28.293375px; }
  .information-eyebrow { font-size:10.2885px; letter-spacing:1.2px; margin-bottom:8px; }
  .information-article { padding:25px 20px 29px; border-radius:18px; }
  .information-copy { font-size:15.43275px; line-height:1.8; }
  #information-information #content .information-copy :is(h1,h2) { font-size:22.29175px; padding:13px 15px; }
  #information-information #content .information-copy h3 { font-size:19.719625px; }
  .contact-layout { gap:22px; }
  .contact-location-panel,#information-contact #form-contact { padding:24px 20px; border-radius:18px; }
  #information-contact #content h2,#information-contact legend { font-size:23.149125px; }
  #information-contact #form-contact button[type=submit] { width:100%; justify-content:space-between; }
  #account-return #input-reason { grid-template-columns:minmax(0,1fr); }
  #account-return #form-return>.row:last-child>div { width:100%; }
  #account-return #form-return>.row:last-child>div>.btn { width:100%; }
}

/* Compatibility pages use actual buttons inside the legacy information copy. */
.legacy-route-page .information-copy a.btn { text-decoration:none; }
.legacy-route-page .information-copy a.btn-primary,
.legacy-route-page .information-copy a.btn-primary:hover,
.legacy-route-page .information-copy a.btn-primary:focus { color:#fff!important; }
.legacy-route-page .information-copy a.btn-outline-secondary:hover,
.legacy-route-page .information-copy a.btn-outline-secondary:focus { color:#fff!important; }

/* Cross-route layout corrections. Copy, prices and form endpoints stay upstream. */
.ritual-product h4 a { display:block; min-height:44px; }
main .btn { min-height:48px; padding:12px 18px; border-radius:12px; white-space:normal; line-height:1.45; }
main .btn-group>.btn { min-width:46px; }
main :is(.form-control,.form-select) { border-radius:12px; }
main :is(.form-control,.form-select):focus-visible { outline:2px solid #7e9bab; outline-offset:2px; }
.header-search .form-control { font-size:14.575375px; min-height:44px; }
.header-search .btn,.header-actions #cart>.dropdown>.btn { min-height:44px; }
.modal .btn-close { flex:0 0 44px; width:44px; height:44px; padding:0; background-size:16px; }
.alert .btn-close { width:44px; height:44px; padding:0; top:4px; right:4px; background-size:14px; }
.locale-options>div { border-radius:16px; padding:12px; }
.locale-options summary,.header-actions .icon-link { min-height:44px; }
.language-title { margin:3px 8px 8px; color:#697a86; font-size:12.00325px; }
.language-choices { display:grid; gap:5px; }
.language-choice.dropdown-item { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:46px; padding:11px 13px; border:0; border-radius:10px; background:transparent; color:#526c7c; font-size:14.575375px; text-align:left; }
.language-choice[aria-current=true],.language-choice:hover,.language-choice:focus-visible { background:#edf4e7; color:#435e70; }
.language-choice:focus-visible { outline:2px solid #7e9bab; outline-offset:0; }
#display-control { display:grid; grid-template-columns:minmax(200px,1fr) auto minmax(240px,1fr) minmax(140px,.6fr); gap:18px; align-items:end; margin:22px 0 28px; }
#display-control>div { width:auto; min-width:0; margin:0; padding:0; }
#display-control .mb-3 { margin-bottom:0!important; }
#display-control .input-group { display:flex; flex-direction:column; align-items:stretch; gap:7px; }
#display-control .input-group-text { display:block; border:0; padding:0; min-height:0; border-radius:0; background:transparent; color:#637584; font-size:12.860625px; text-align:left; }
#display-control .form-select { width:100%; min-width:0; min-height:50px; margin-left:0; padding:11px 36px 11px 13px; font-size:14.575375px; border-radius:12px!important; }
#display-control .btn { display:flex!important; align-items:center; justify-content:center; gap:9px; min-height:50px; }
#display-control #compare-total { text-align:center; }
#display-control #compare-total span { display:inline!important; }
#display-control .btn-group { display:flex; }
#display-control .btn-group>.btn { min-width:46px; padding:12px; }
#product-search #button-search { min-width:150px; }
#product-search #content>h2 { margin-top:28px; font-size:25.72125px; line-height:1.3; }
#product-search :is(#input-description,#input-sub-category) { width:20px; height:20px; margin-right:10px; }
#product-search .form-check { display:flex; align-items:center; gap:9px; min-height:44px; padding-left:0; }
#product-search .form-check-input { float:none; margin-left:0; flex:0 0 20px; }
#product-search .form-check-label { flex:1; min-height:44px; padding:9px 0; cursor:pointer; }
#product-search input[type=checkbox]:checked { background-color:#587482; border-color:#587482; }
#product-manufacturer #content>.row.mb-3 { row-gap:12px; }
#product-manufacturer #content>.row.mb-3>div { min-width:0; }
#product-manufacturer #content>.row.mb-3>div>a { display:flex; align-items:center; min-height:52px; height:100%; padding:12px 15px; border:1px solid #dce5d8; border-radius:12px; background:#fafbf7; color:#526c7c; overflow-wrap:anywhere; }
#product-manufacturer #content>p>a[href*="#"] { display:inline-flex; justify-content:center; align-items:center; min-width:44px; min-height:44px; margin:4px 0; padding:7px; border:1px solid #dce5d8; border-radius:10px; color:#526c7c; }
#product-manufacturer #content>h2[id] { scroll-margin-top:22px; }
#information-sitemap #content ul { padding-left:1.15em; }
#information-sitemap #content li { margin-bottom:7px; overflow-wrap:anywhere; }
#information-sitemap #content a { display:inline-block; padding:7px 0; line-height:1.6; }
.comparison-scroll { width:100%; max-width:100%; overflow:auto; border:1px solid #dce5d8; border-radius:18px; margin-bottom:24px; }
.comparison-scroll:focus-visible { outline:2px solid #7e9bab; outline-offset:4px; }
#product-compare .comparison-scroll table { width:100%; min-width:calc(150px + 260px * var(--compare-columns,2)); margin:0; table-layout:fixed; border:0; }
#product-compare .comparison-scroll tr>td:first-child:not([colspan]) { width:150px; }
#product-compare .comparison-scroll col:first-child { width:150px; }
#product-compare .comparison-scroll td { padding:18px; font-size:13.718px; line-height:1.65; vertical-align:top; overflow-wrap:anywhere; }
#product-compare .comparison-scroll thead td { background:#edf4e7; }
#product-compare .comparison-scroll img { max-height:230px; max-width:100%; object-fit:contain; border-radius:12px; }
#product-compare .comparison-scroll form { display:grid; gap:12px; }
#product-compare .comparison-scroll .btn { display:flex; align-items:center; justify-content:center; width:100%; }
#account-return #form-return .form-check-inline { display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:8px 0; }
#account-return #form-return .form-check-inline input { float:none; margin:0; }
#account-address #address td:last-child { white-space:nowrap; }
@media(max-width:1199.98px) {
  #display-control { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  #display-control>div:nth-child(2) { justify-self:end; }
}
@media(max-width:575.98px) {
  .locale-options>div { left:50%; right:auto; transform:translateX(-50%); max-width:calc(100vw - 32px); }
  #display-control { grid-template-columns:minmax(0,1fr); gap:16px; }
  #display-control>div:nth-child(2) { display:none!important; }
  #product-search #button-search { width:100%; }
  #product-search #content>h2 { font-size:23.149125px; }
  #product-manufacturer #content>.row.mb-3>div>a { min-height:48px; }
  #product-list.product-list .ritual-product { display:block; }
  #product-list.product-list .ritual-product .image { width:100%; min-width:0; }
  #product-list.product-list .ritual-product .content { padding:20px 0; }
  #account-address #address :is(table,tbody) { display:block; width:100%; }
  #account-address #address tr { display:grid; grid-template-columns:minmax(0,1fr); border-bottom:1px solid #dce5d8; }
  #account-address #address tr:last-child { border-bottom:0; }
  #account-address #address td { display:block; width:auto; border:0; padding:12px 16px; }
  #account-address #address td:nth-child(2) strong { display:inline-block; padding:6px 10px; border-radius:8px; background:#edf4e7; }
  #account-address #address td:last-child { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; }
  #account-address #content>.row:last-of-type { row-gap:12px; }
  #account-address #content>.row:last-of-type>div { flex:0 0 100%; width:100%; }
  #account-address #content>.row:last-of-type .btn { display:flex; justify-content:center; width:100%; }
}

/* Mini cart: product text can wrap; monetary amounts always keep their own space. */
#cart .mini-cart-panel {
  width:min(480px,calc(100vw - 32px)); min-width:0; max-width:none;
  margin-top:12px; padding:20px; border:1px solid #dce5d8; border-radius:20px;
  background:#fff; color:#526673; box-shadow:0 18px 50px #344b5d26;
  max-height:min(70vh,680px); overflow-y:auto; overscroll-behavior:contain;
}
#cart .mini-cart-products { list-style:none; margin:0; padding:0; }
#cart .mini-cart-item {
  display:grid; grid-template-columns:80px minmax(0,1fr) 44px;
  align-items:start; gap:10px 14px; padding:0 0 18px;
}
#cart .mini-cart-item+.mini-cart-item { border-top:1px solid #e5ebdf; padding-top:18px; }
#cart .mini-cart-image { grid-row:1 / 3; padding:8px; background:#f3f7ee; border-radius:13px; }
#cart .mini-cart-image img { display:block; width:100%; height:64px; max-width:none; object-fit:contain; border-radius:7px; background:#fff; }
#cart .mini-cart-details { min-width:0; }
#cart .mini-cart-name { display:block; color:#435e70; font-size:14.575375px; font-weight:500; line-height:1.5; overflow-wrap:anywhere; }
#cart .mini-cart-name:hover { color:#587847; text-decoration:underline; text-underline-offset:3px; }
#cart .mini-cart-meta { list-style:none; margin:7px 0 0; padding:0; color:#71808a; line-height:1.5; overflow-wrap:anywhere; }
#cart .mini-cart-meta small { font-size:12.00325px; }
#cart .mini-cart-remove { margin:0; }
#cart .mini-cart-remove button {
  display:grid; place-items:center; width:44px; height:44px; padding:0;
  border:1px solid #efdad6; border-radius:12px; color:#b66a60; background:#fbf4f1; font-size:16.290125px;
}
#cart .mini-cart-remove button:hover { background:#f5e4de; border-color:#dbb4ab; color:#9c4d43; }
#cart .mini-cart-line { grid-column:2 / -1; display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; }
#cart .mini-cart-quantity { color:#71808a; font-size:12.860625px; white-space:nowrap; }
#cart .mini-cart-price { flex:none; color:#435e70; font-size:16.290125px; font-weight:600; white-space:nowrap; overflow-wrap:normal; font-variant-numeric:tabular-nums; }
#cart .mini-cart-totals { margin:0; padding:15px 0; border-top:1px solid #dce5d8; }
#cart .mini-cart-totals>div { display:flex; justify-content:space-between; align-items:baseline; gap:16px; }
#cart .mini-cart-totals dt { font-size:15.43275px; font-weight:500; color:#526673; }
#cart .mini-cart-totals dd { margin:0; color:#435e70; font-size:18.004875px; font-weight:600; white-space:nowrap; font-variant-numeric:tabular-nums; }
#cart .mini-cart-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
#cart .mini-cart-actions a { display:flex; align-items:center; justify-content:center; gap:9px; min-height:50px; padding:12px 10px; border-radius:12px; font-size:13.718px; font-weight:500; line-height:1.4; text-align:center; }
#cart .mini-cart-view { background:#f1f6ec; border:1px solid #d9e4d1; color:#526673; }
#cart .mini-cart-checkout { background:linear-gradient(135deg,#587482,#405c6d); border:1px solid #526b79; color:#fff; }
#cart .mini-cart-view:hover { background:#e5efdd; color:#435e70; }
#cart .mini-cart-checkout:hover { background:#354f60; color:#fff; }
#cart .mini-cart-empty { padding:22px 10px; text-align:center; font-size:14.575375px; color:#71808a; }
@media(max-width:575px) {
  .header-actions #cart,.header-actions #cart>.dropdown { position:static; }
  #cart .mini-cart-panel { position:absolute; top:100%; left:12px; right:12px; width:auto; margin-top:6px; padding:16px; max-height:calc(100dvh - 180px); border-radius:16px; transform:none; }
  #cart .mini-cart-item { grid-template-columns:64px minmax(0,1fr) 44px; column-gap:10px; }
  #cart .mini-cart-image { padding:6px; }
  #cart .mini-cart-image img { height:52px; }
  #cart .mini-cart-name { font-size:13.718px; }
  #cart .mini-cart-line { grid-column:1 / -1; padding-left:74px; }
  #cart .mini-cart-price { font-size:16.290125px; }
  #cart .mini-cart-actions { grid-template-columns:1fr; }
}

/* Header disclosures share readable labels and contained scrolling at every size. */
.locale-options>summary { min-width:44px; }
.locale-options>div { max-width:calc(100vw - 24px); max-height:calc(100dvh - 160px); overflow-y:auto; overscroll-behavior:contain; }
.language-choice { gap:12px; }
.language-choice>i { flex:none; }
.mega-intro,.mega-group { min-width:0; }
.mega-intro h2,.mega-no-subcategories h3,.mega-extra-heading h2 { overflow-wrap:anywhere; }
.mega-link-label>span:last-child,.mega-extra-grid strong { min-width:0; overflow-wrap:anywhere; }
.mega-link-label { gap:3px; }
.mega-grandchildren a { overflow-wrap:anywhere; line-height:1.5; }
.mega-extra-grid>a>span:last-child { flex:none; }
.mega-explore,.mega-group>ul>li>a,.mega-grandchildren a,.mega-brands a,.mega-panel-footer>a { min-height:44px; }
.mega-grandchildren a,.mega-brands a,.mega-panel-footer>a { display:flex; align-items:center; }
@media(min-width:1200px) {
  .mega-panel-body { grid-template-columns:190px minmax(0,1fr) 250px; }
}
@media(min-width:1200px) and (max-width:1399px) {
  .mega-panel-body { grid-template-columns:190px minmax(0,1fr) 190px; }
}
@media(max-width:1199px) {
  .mega-catalog { overflow-x:hidden; }
  .mega-mobile-heading { position:sticky; top:0; z-index:2; background:#fff; padding-top:12px; padding-bottom:12px; margin-top:-12px; }
  .mega-mobile-heading::before { content:""; position:absolute; left:0; right:0; bottom:100%; height:24px; background:#fff; }
  .mega-mobile-heading>img { flex:0 1 170px; max-width:calc(100% - 64px); min-width:0; }
  .mega-mobile-close { flex:none; width:44px; height:44px; }
  .mega-trigger { white-space:normal; }
  .mega-trigger>span:not(.category-emoji) { min-width:0; overflow-wrap:anywhere; }
  .mega-grandchildren a { font-size:14.4039px; }
  .mega-brands a { font-size:13.50365625px; }
  .mega-mobile-footer a { min-height:48px; overflow-wrap:anywhere; }
  .mega-extra-grid>a { min-width:0; }
}
@media(max-width:575.98px) {
  .announcement { display:flex; align-items:center; justify-content:center; gap:6px; }
  .announcement>span { flex:none; margin:0; }
}

/* Compact storefront header: retain the reading scale and usable controls. */
html { scroll-padding-top:120px; }
.shop-header .masthead { height:56px; gap:12px; }
.shop-header .masthead>.brand-logo { width:210px; }
.shop-header .header-search .form-control { height:44px; min-height:44px; padding-block:8px; }
.shop-header .locale-options>div { top:calc(100% + 4px); }
@media(min-width:1200px) {
  .shop-header .navigation-row,.shop-header .mega-catalog { min-height:44px; }
  .shop-header .mega-trigger { min-height:44px; padding-block:8px; }
  .shop-header .mega-all { min-height:40px; padding-block:6px; }
}
@media(max-width:1199px) {
  .shop-header .masthead { height:60px; }
  .shop-header .masthead>.brand-logo { width:180px; }
  .shop-header .navigation-row { min-height:52px; }
  .shop-header .masthead>.header-search { bottom:3px; }
  .shop-header .mega-mobile-toggle { min-height:44px; padding-block:10px; line-height:24px; }
}
@media(max-width:767px) {
  .shop-header .masthead>.brand-logo { width:145px; }
}
@media(max-width:360px) {
  .shop-header .masthead>.brand-logo { width:130px; }
}

/* A restrained beauty-store finish. Presentation only; native controls stay intact. */
:root {
  --refined-radius:6px;
  --refined-panel-radius:10px;
  --refined-control-height:42px;
  --refined-line:#e1e6df;
  --refined-panel-padding:20px;
  --refined-mobile-input-font:16px;
}
.preview-note { padding-block:3px; }
.announcement { padding-block:6px; }
#container main>.container { padding-top:18px; padding-bottom:32px; }
#container .breadcrumb { margin-bottom:18px; padding-block:8px; }
#container main :is(.btn,.form-control,.form-select,.card,.alert,.accordion-item) { border-radius:var(--refined-radius); }
#container main :is(.btn,.form-control,.form-select) { min-height:var(--refined-control-height); }
#container main .btn { padding:9px 16px; gap:8px; font-weight:500; line-height:1.4; box-shadow:none; }
#container main .btn-primary { background:#526776; border-color:#526776; box-shadow:none; }
#container main .btn-primary:hover { background:#405a69!important; border-color:#405a69!important; box-shadow:none; }
#container main :is(.form-control,.form-select) { padding:8px 11px; border-color:#d4ded5; }
#container main .form-select { padding-right:34px; }
#container main .form-control.is-invalid { padding-right:34px!important; }
#container main .form-select.is-invalid { padding-right:58px!important; }
#container main textarea.form-control { min-height:100px; }
#container main :is(.alert,.accordion-body) { padding:12px 16px; }
#container main .accordion-button { padding:13px 16px; }
#container main .form-label { margin-bottom:5px; }

/* Smaller page introductions, retaining the original sage and botanical details. */
#container :is(.checkout-heading,.account-heading,.information-heading,.category-heading) {
  padding:16px 22px; margin-bottom:20px; border-radius:2px 24px 2px 2px;
  background:#f0f4ec; gap:16px;
}
#container #content :is(.checkout-heading,.account-heading,.information-heading,.category-heading) h1 { font-size:29.15075px; line-height:1.2; margin:0; }
#container :is(.checkout-eyebrow,.account-eyebrow,.information-eyebrow,.category-heading .eyebrow) { margin-bottom:5px; letter-spacing:1.3px; line-height:1.4; }
#container :is(.checkout-eyebrow,.account-eyebrow,.information-eyebrow)>span { font-size:15.43275px; line-height:1; }
#container .category-intro { margin-top:12px; margin-bottom:0; }
#container .checkout-progress { gap:10px 24px; margin-bottom:22px; }
#container .checkout-progress li>span { flex-basis:26px; height:26px; }

/* Checkout, authentication, customer pages and editorial/contact panels. */
#container :is(.checkout-panel,.auth-panel,.information-article,.contact-location-panel,.customer-order-card,.order-info-panel,.order-totals-panel,.order-history-wrap,.collection-empty,.cart-summary) {
  padding:var(--refined-panel-padding); border-radius:var(--refined-panel-radius); border-color:var(--refined-line); box-shadow:none;
}
#container #checkout-checkout .checkout-panel { padding:var(--refined-panel-padding); border-radius:var(--refined-panel-radius); margin-bottom:16px; }
#container #content>form:not(#form-login),#container #information-contact #form-contact { padding:var(--refined-panel-padding); border-radius:var(--refined-panel-radius); }
#container :is(.checkout-order-summary,.cart-summary,.order-totals-panel,.auth-create,.contact-location-panel,.collection-empty) { background:#f7f9f4; }
#container #checkout-checkout #checkout-register>form>p:first-child { padding:10px 12px; margin-bottom:18px; border-radius:5px; }
#container main fieldset { margin-bottom:18px; }
#container main legend { font-size:21.434375px; margin-bottom:16px; padding-bottom:9px; }
#container #checkout-checkout .checkout-method-panel legend { font-size:20.577px; }
#container #checkout-checkout :is(.form-control,.form-select) { min-height:var(--refined-control-height); padding:8px 11px; border-radius:var(--refined-radius); }
#container main :is(.form-check-input) { width:18px; height:18px; }
#container main .form-switch .form-check-input { width:34px; }
#container #checkout-checkout :is(.form-label,.form-check-label) { margin-bottom:5px; }
#container #checkout-checkout .row.mb-3,#container #information-contact #form-contact .row.mb-3 { margin-bottom:14px!important; }
#container #checkout-checkout .checkout-method-panel .input-group { grid-template-columns:36px minmax(0,1fr); }
#container #checkout-checkout .checkout-method-panel .input-group-text { border-radius:6px 0 0 6px; }
#container #checkout-checkout .checkout-method-panel .input-group>.form-control { border-radius:0 6px 6px 0!important; }
#container #checkout-checkout .checkout-method-panel .input-group>.btn { min-height:42px; margin-top:8px; border-radius:6px!important; }
#container #checkout-checkout #checkout-payment .btn,#container #checkout-cart .cart-checkout { min-height:46px; padding:11px 16px; font-weight:500; }
#container #checkout-cart #accordion :is(.btn,.form-control) { min-height:42px; border-radius:6px; }
#container #checkout-checkout #input-comment { min-height:90px; }
#container #checkout-checkout .order-summary-title { font-size:21.434375px; margin-bottom:14px; gap:8px; }
#container #checkout-checkout .order-review :is(td,th) { padding-block:10px; }
#container #checkout-checkout .order-review { margin-bottom:14px; }
#container :is(.account-panel-icon,.contact-panel-icon,.customer-order-icon,.summary-icon) { width:36px; height:36px; font-size:16.290125px; border-radius:8px; margin-bottom:14px; }
#container .auth-botanical { font-size:137.18px; opacity:.65; }
#container #account-login :is(.account-login-button,.account-register-link) { min-height:44px; }
#container .account-link-grid { gap:12px; }
#container .account-link-grid>li>a { min-height:78px; padding:15px; border-radius:8px; gap:11px; }
#container .account-link-icon { flex-basis:34px; height:34px; border-radius:6px; font-size:15.43275px; }
#container main .list-group { border-radius:8px; }
#container main .list-group-item { padding:11px 14px; }
#container #information-contact legend { padding-bottom:12px; margin-bottom:18px; }
#container #information-contact textarea.form-control { min-height:150px; }
#container .information-article { padding:24px 30px; }
#container .information-copy :is(blockquote,h1,h2) { border-radius:0 6px 6px 0; }

/* Shopping actions lose the large icon tiles, gradients and raised hover effect. */
#container .ritual-product .button { grid-template-columns:minmax(0,1fr) 42px; gap:7px; }
#container .ritual-product .button :is(.product-add,.product-wish) {
  min-height:42px; border-radius:6px; padding:8px 11px; gap:7px;
  box-shadow:none; font-weight:500; transform:none;
}
#container .ritual-product .button .product-add,#container #product-info #button-cart { background:#526776; border-color:#526776; }
#container .ritual-product .button .product-wish { width:42px; padding:0; background:#fff; }
#container :is(.product-add,#button-cart) .cart-action-icon { flex-basis:18px; width:18px; height:18px; background:transparent; border-radius:0; }
#container .ritual-product .button .product-add:hover,#container #product-info #button-cart:hover { background:#405a69!important; box-shadow:none; transform:none; }
#container .ritual-product .content { padding-top:16px; }
#container .ritual-product :is(h4,.price) { margin-bottom:12px; }
#container .product-photo-stage { padding:12px; border-radius:20px 8px 8px 8px; }
#container .product-photo-link { border-radius:14px 5px 5px 5px; }
#container .product-gallery-flower { font-size:37.7245px; top:-10px; }
#container .product-thumbnail { flex-basis:70px; height:76px; border-radius:6px; }
#container .product-thumbnails { gap:9px; padding-top:12px; }
#container #product-info .product-pricing { padding:13px 17px; border-radius:8px; margin-bottom:16px; background:#f7f9f4; }
#container #product-info .product-pricing .price-new { font-size:27.436px; font-weight:500; }
#container #product-info .product-purchase { grid-template-columns:78px minmax(0,1fr); gap:10px; }
#container #product-info :is(#button-cart,.product-quantity input) { min-height:46px; padding:10px 12px; border-radius:6px; line-height:1.4; }
#container #product-info .product-quantity input { height:46px; }
#container #product-info .product-secondary-actions button { min-height:40px; padding:8px 12px; border-radius:6px!important; }
#container #product-info .product-details { padding:0 22px 20px; border-radius:10px; margin-bottom:32px; }
#container #product-info .product-details>.nav-tabs { margin-bottom:20px; }
#container #product-info .product-details>.nav-tabs .nav-link { padding-block:13px; font-size:14.575375px; border-bottom-width:2px; }
#container .product-gallery { top:120px; }
#container .cart-summary { top:120px; }
#container #shopping-cart .cart-product { padding:16px; margin-bottom:14px; border-radius:10px; box-shadow:none; }
#container #shopping-cart .cart-quantity :is(.btn,.form-control) { height:42px; min-height:42px; border-radius:6px!important; }
#container #shopping-cart .cart-totals td { padding-block:11px; }
#container :is(.cart-empty,.collection-empty) { padding:30px 22px; border-radius:10px; }
#container :is(.cart-empty-icon,.collection-empty-icon) { width:58px; height:58px; font-size:24.863875px; margin-bottom:16px; }
#container .saved-product { border-radius:10px; }
#container .saved-product-content { padding:17px; }
#container .saved-product-photo { padding:9px; border-radius:0 0 12px 0; }
#container .saved-product-photo>a { border-radius:12px 5px 5px 5px; }
#container #account-wishlist .saved-product-actions .btn-primary { min-height:42px; padding:9px 12px; }
#container .customer-order-status { padding:5px 10px; border-radius:6px; }
#container .customer-order-top { margin-bottom:16px; }
#container .customer-order-facts { padding-block:13px; }
#container #account-order .order-products-table>tbody>tr>td { padding:15px 12px; }

/* Tighter navigation details, filters, dialogs and editorial spacing. */
#container .mega-panel { border-top-width:2px; border-radius:0 0 8px 8px; box-shadow:0 10px 24px #35475314; }
#container .mega-panel-body { padding:22px; gap:22px; }
#container .mega-feature { border-radius:20px 6px 6px 6px; }
#container .mega-feature-caption { padding:16px; }
#container .category-pills a { padding:7px 13px; border-radius:6px; }
#container #display-control { margin-block:16px 20px; gap:12px; }
#container #display-control :is(.form-select,.btn) { min-height:42px; border-radius:6px!important; padding-block:9px; }
#container #cart :is(.mini-cart-panel,.mini-cart-item) { border-radius:8px; }
#container #cart .mini-cart-actions a { min-height:42px; padding:9px; border-radius:6px; font-weight:500; }
:is(#modal-shipping,#modal-payment) .modal-content { border-radius:10px; box-shadow:0 12px 40px #3346521a; }
:is(#modal-shipping,#modal-payment) .modal-header { padding:14px 18px; border-radius:10px 10px 0 0; }
:is(#modal-shipping,#modal-payment) .modal-body { padding:18px; }
:is(#modal-shipping,#modal-payment) .modal-title { font-size:19.719625px; }
:is(#modal-shipping,#modal-payment) .form-check { padding:12px; margin-bottom:12px; border-radius:6px; gap:9px; }
:is(#modal-shipping,#modal-payment) .btn-primary { min-height:42px; padding:9px 16px; border-radius:6px; background:#526776; box-shadow:none; font-weight:500; }
#container .cosmelina-home { padding-top:24px; }
#container .hero-copy { padding-block:32px 24px; }
#container :is(.ritual-hero,.hero-still-life) { min-height:410px; }
#container .hero-still-life { border-top-left-radius:90px; }
#container .hero-photo { top:65px; }
#container .hero-label { bottom:24px; }
#container .round-stamp { width:76px; height:76px; bottom:26px; }
#container .care-strip { padding-block:20px; margin-top:24px; }
#container .discovery-section { padding-top:44px; }
#container .selection-section { padding-block:44px; }
#container .manifesto-inner { padding-block:42px; }
#container .ritual-footer { padding-top:32px; }
#container .footer-bottom { margin-top:28px; padding-block:16px; }

@media(max-width:991.98px) {
  #container #checkout-checkout .checkout-method-panel .input-group { grid-template-columns:36px minmax(0,1fr) auto; }
  #container #checkout-checkout .checkout-method-panel .input-group>.btn { margin-top:0; margin-left:8px; }
  #container #account-order .order-products-table>tbody>tr>td { padding:0; }
  #container .product-gallery,#container .cart-summary { position:static; }
}
@media(max-width:767.98px) {
  :root { --refined-control-height:44px; --refined-panel-padding:18px; }
  #container main>.container { padding-top:14px; }
  #container :is(.checkout-heading,.account-heading,.information-heading,.category-heading) { padding:14px 18px; border-top-right-radius:20px; margin-bottom:18px; }
  #container #content :is(.checkout-heading,.account-heading,.information-heading,.category-heading) h1 { font-size:25.72125px; }
  #container main :is(.form-control,.form-select) { font-size:var(--refined-mobile-input-font); }
  #container main :is(.btn,.product-add,.product-wish),#container #display-control :is(.form-select,.btn),#container #account-wishlist .saved-product-actions .btn-primary { min-height:44px; }
  #container .ritual-product .button { grid-template-columns:minmax(0,1fr) 44px; }
  #container .ritual-product .button :is(.product-add,.product-wish) { min-height:44px; }
  #container .ritual-product .button .product-wish { width:44px; }
  #container #product-info .product-secondary-actions button { min-height:44px; }
  #container #checkout-checkout .checkout-method-panel .input-group>.btn { min-height:44px; }
  #container #checkout-cart #accordion :is(.btn,.form-control) { min-height:44px; }
  #container #cart .mini-cart-actions a,:is(#modal-shipping,#modal-payment) .btn { min-height:44px; }
  #container .auth-create { min-height:0; }
  #container .information-article { padding:20px; }
  #container .mega-panel-body { padding:0 14px 14px; }
  #container .hero-copy { padding-block:20px 0; }
  #container :is(.ritual-hero,.hero-still-life) { min-height:340px; }
  #container .hero-photo { top:30px; height:160px; }
  #container .hero-still-life { border-top-left-radius:70px; }
  #container .discovery-section { padding-top:32px; }
  #container .selection-section { padding-block:32px; }
}
@media(max-width:575.98px) {
  #container #checkout-checkout .checkout-method-panel .input-group { grid-template-columns:36px minmax(0,1fr); }
  #container #checkout-checkout .checkout-method-panel .input-group>.btn { margin:8px 0 0; }
  #container #shopping-cart .cart-product { padding:14px; }
  #container #shopping-cart .cart-quantity :is(.btn,.form-control) { min-height:44px; height:44px; }
}

/* Reference-led boutique presentation. Catalogue, forms and payment contracts stay native. */
:root { --boutique-green:#4e7154; --boutique-dark:#3e5e44; --boutique-paper:#faf8f4; --boutique-line:#e7e6df; --copy:#46515b; --copy-soft:#70767a; --heading:#3f494c; }
body { background:var(--boutique-paper); }
#container { background:#fff; }
.container { max-width:1440px; padding-inline:30px; }
.preview-note { font-size:8.57375px; padding:2px 12px; background:#f2efe8; }
.boutique-utility { padding:0; background:#f5f2eb; color:#626b64; letter-spacing:0; }
.boutique-utility>.container { min-height:28px; display:flex; align-items:center; justify-content:space-between; gap:18px; font-size:10.2885px; }
.boutique-utility span { margin:0; color:inherit; }
.utility-values { display:flex; gap:28px; }
.utility-values>span { display:flex; align-items:center; gap:8px; }
.boutique-utility a { color:#59665d; padding:4px 0; }
.shop-header { background:#fff; box-shadow:none; border-bottom:1px solid var(--boutique-line); }
.shop-header .masthead { grid-template-columns:210px minmax(220px,1fr) auto; height:82px; gap:40px; }
.shop-header .masthead>.brand-logo { grid-column:1; grid-row:1; justify-self:start; width:200px; }
.shop-header .masthead>.header-search { grid-column:2; grid-row:1; width:100%; max-width:650px; justify-self:center; position:static; }
.shop-header .header-search form { border:1px solid #dfE3dc; border-radius:6px; background:#fff; overflow:hidden; margin:0!important; }
.shop-header .header-search .form-control { min-height:42px; height:42px; padding:9px 14px; font-size:13.718px; background:transparent; border:0; border-radius:0; }
.shop-header .header-search .btn { width:44px; flex:none; padding:8px; min-height:42px; border:0; border-radius:0; color:#fff; background:var(--boutique-green); }
.header-actions { gap:18px; }
.header-actions .icon-link { width:auto; min-width:48px; height:auto; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; font-size:19.719625px; }
.header-action-label { font-size:10.2885px; font-weight:400; white-space:nowrap; }
.header-actions #cart>.dropdown>.btn { display:flex!important; flex-direction:column; align-items:center; justify-content:center; gap:6px; padding:4px 0; font-size:10.2885px; font-weight:400; line-height:1.4; max-width:170px; }
.header-actions #cart .btn .fa-cart-shopping { font-size:19.719625px; margin:0; }
.locale-options>summary { font-size:16.290125px; min-width:30px; }
.shop-header .navigation-row { border-top:1px solid #f0f0eb; }
.shop-header .mega-catalog { min-height:44px; gap:17px; }
.shop-header .mega-topics { flex:1; justify-content:space-between; gap:14px; }
.shop-header .mega-trigger { font-size:13.50365625px; font-weight:500; min-height:44px; padding:9px 0; gap:6px; }
.shop-header .mega-trigger>.category-emoji { font-size:14.4039px; }
.shop-header .mega-all { border:0; padding:8px 13px; border-radius:4px; min-height:36px; font-size:12.6034125px; background:var(--boutique-green); color:white; }
.shop-header .mega-all>.category-emoji { font-size:14.4039px; }
.mega-trigger:after { height:2px; background:var(--boutique-green); bottom:0; }
.mega-item[data-kind=sale]>.mega-trigger { color:#b15144; }
#container .mega-panel { left:30px; right:30px; width:auto; max-width:1380px; margin-inline:auto; border:1px solid var(--boutique-line); border-radius:6px; box-shadow:0 14px 32px #3b493a12; }
#container .mega-panel-body { grid-template-columns:178px minmax(0,1fr); align-items:start; gap:16px 24px; padding:18px; }
.mega-intro { grid-column:1; grid-row:1; border-right:1px solid var(--boutique-line); padding-right:16px; align-self:stretch; }
.mega-rail { display:grid; gap:3px; }
.mega-rail>a { display:flex; align-items:center; gap:8px; padding:9px 8px; min-height:38px; border-radius:4px; }
.mega-rail>a.is-current,.mega-rail>a:hover { background:#edf1e8; }
.mega-rail>a>.category-emoji,.mega-rail>a>i { flex:0 0 21px; font-size:16.2043875px; color:#657c65; }
.mega-rail strong { display:block; font-size:12.6034125px; font-weight:600; line-height:1.35; }
.mega-link-area { grid-column:2; grid-row:1; gap:16px; justify-content:flex-start; }
.mega-section-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; padding-bottom:13px; border-bottom:1px solid var(--boutique-line); }
.mega-section-heading h2 { font:500 18.90511875px/1.3 Georgia,serif; color:#46564a; margin:0 0 4px; }
.mega-section-heading p { font-size:11.70316875px; line-height:1.45; color:#7a817b; margin:0; }
.mega-section-heading>a { flex:none; display:inline-flex; gap:12px; align-items:center; padding:8px 10px; border:1px solid #dfe5da; border-radius:4px; font-size:11.70316875px; color:#52664f; }
.mega-link-groups { gap:20px; align-items:start; }
.mega-group { min-width:0; }
.mega-group h3 { font-size:12.6034125px; font-weight:600; color:#46564a; margin:0 0 8px; line-height:1.5; }
.mega-group>ul>li>a { font-size:13.50365625px; min-height:30px; padding:4px 3px; border:0; border-radius:3px; }
.mega-link-label { display:flex; align-items:flex-start; gap:8px; min-width:0; }
.mega-link-label>.category-emoji { flex:0 0 18px; line-height:1.5; }
.mega-link-label>span:last-child { min-width:0; overflow-wrap:anywhere; }
.mega-link-arrow { flex:none; }
.mega-group .category-emoji { font-size:13.50365625px; }
.mega-grandchildren a { font-size:12.6034125px; min-height:32px; padding-block:5px; }
.mega-panel-footer { padding:7px 18px; background:#fafbf7; }
.mega-panel-footer>span,.mega-panel-footer>a { font-size:11.70316875px; min-height:30px; }
.mega-scrim { background:#34413316; backdrop-filter:none; }
#container .mega-more-panel { padding:18px; }
.mega-extra-heading>.mega-kicker { display:none; }
.mega-extra-heading h2 { font:500 18.90511875px/1.3 Georgia,serif; color:#46564a; margin:0; }
.mega-extra-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px 18px; margin-top:14px; }
.mega-extra-grid>a,.mega-extra-grid>a:nth-child(2n) { min-width:0; min-height:44px; padding:9px 8px; gap:9px; border:0; border-radius:4px; background:transparent; }
.mega-extra-grid strong { font-size:12.6034125px; line-height:1.4; }
.mega-extra-grid .category-emoji { flex:0 0 22px; font-size:16.2043875px; }
.mega-extra-grid>a:hover,.mega-extra-grid>a:focus-visible { background:#edf1e8; }
.mega-no-subcategories { padding-top:4px; }
.mega-no-subcategories h3 { font-size:23.4063375px; margin:10px 0; }
.mega-no-subcategories p { display:none; }

/* One panoramic image, quiet copy and six real catalogue entry points. */
#container .cosmelina-home { padding-top:0; }
#container .ritual-hero { position:relative; display:flex; justify-content:flex-end; align-items:center; min-height:390px; isolation:isolate; overflow:hidden; padding-inline:30px; }
.boutique-hero-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-1; }
#container .hero-copy { width:51%; padding:32px 38px; background:none; border-radius:0; }
.hero-copy:after { content:none; }
#content.cosmelina-home .hero-copy h1 { font-size:clamp(30.008125px,3.0008125vw,43.726125px); line-height:1.08; letter-spacing:-1px; color:#424a43; margin-bottom:17px; }
#content.cosmelina-home .hero-copy h1 em { color:#424a43; font-style:normal; letter-spacing:-1px; }
.hero-copy .eyebrow { font-size:10.2885px; letter-spacing:2px; margin-bottom:15px; color:#67765c; }
.hero-copy .eyebrow>span { display:none; }
.hero-description { font-size:14.575375px; line-height:1.65; max-width:410px; margin-bottom:20px; color:#60675f; }
#container .hero-copy .editorial-button { background:var(--boutique-green); border-color:var(--boutique-green); padding:11px 20px; min-height:42px; border-radius:4px; font-size:12.00325px; color:white; gap:28px; }
.hero-footnote { font-size:10.2885px; line-height:1.5; padding-top:18px; margin-top:0; color:#687563; }
.hero-footnote .line-flower { display:none; }
.boutique-worlds { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; padding-top:14px; padding-bottom:14px; }
.world-card { display:flex; flex-direction:column; background:#f6f4ee; border:1px solid #eeece5; border-radius:5px; overflow:hidden; transition:border-color .2s,transform .2s; min-width:0; }
.world-card:hover { transform:translateY(-2px); border-color:#b8c4ae; }
.world-photo { height:112px; overflow:hidden; background:#f3f1e9; }
.world-photo img { width:100%; height:100%; object-fit:cover; }
.world-caption { display:flex; align-items:flex-start; gap:7px; padding:12px 10px; flex:1; }
.world-caption>.category-emoji { flex:none; font-size:18.004875px; }
.world-caption>div { min-width:0; flex:1; }
.world-caption strong { display:block; font-size:12.00325px; font-weight:600; line-height:1.4; }
.world-caption div>span { display:block; font-size:10.2885px; line-height:1.45; margin-top:5px; color:#73786f; }
.world-caption>i { align-self:flex-end; background:#fff; border-radius:50%; padding:6px; font-size:7.716375px; margin-left:0; }
#container .care-strip { margin-top:0; padding-block:16px; border-block:1px solid var(--boutique-line); gap:14px; }
.care-strip>span { font-size:12.00325px; gap:8px; }
.care-strip .category-emoji { font-size:17.1475px; }
#container .discovery-section { padding-top:32px; }
.section-heading h2 { font-size:29.15075px; line-height:1.2; }
.section-heading .eyebrow { font-size:9.431125px; letter-spacing:1.6px; }
.discovery-grid { gap:18px; }
.discovery-card { border-radius:6px; border:1px solid #edeae2; }
.discovery-card img { height:180px; }
.discovery-card>div { padding:18px 22px; }
.discovery-card h3 { font-size:24.0065px; }
.discovery-card p { font-size:12.860625px; }
.boutique-spotlight { margin-top:18px; }
#container .boutique-spotlight .hero-still-life { min-height:180px; border-radius:6px; background:#eef2e7; }
.boutique-spotlight :is(.hero-orbit,.botanical-drawing,.round-stamp,.hero-edition) { display:none; }
#container .boutique-spotlight .hero-photo { top:0; left:45%; height:100%; }
#container .boutique-spotlight .hero-label { left:28px; bottom:22px; }
.boutique-spotlight .hero-label strong { font-size:24.0065px; }
.boutique-spotlight .hero-label>span { font-size:9.431125px; margin-bottom:7px; }
.boutique-spotlight .hero-label a { font-size:11.145875px; margin-top:10px; }
#container .selection-section { padding-block:36px; }
.selection-grid { gap:18px; }
#container .manifesto { background:#f4f3ec; }
.manifesto:before,.manifesto:after,.manifesto-flower { display:none; }
.manifesto h2 { font-size:32.58025px; }
.manifesto p:not(.eyebrow) { font-size:13.718px; }

/* Fine borders and quieter product cards, with the original cart and wishlist forms. */
#container .ritual-product { position:relative; padding:0; border:1px solid #e8e8e1; background:white; border-radius:5px; overflow:hidden; margin-bottom:0; }
#container .ritual-product>.image { padding:12px; border:0; border-radius:0; background:#faf9f5; }
#container .ritual-product>.image>a { border-radius:0; }
#container .ritual-product>.image img { aspect-ratio:1/1; object-fit:contain; mix-blend-mode:multiply; }
#container .ritual-product .content { padding:14px; }
#container .ritual-product .description { height:auto; min-height:0; display:flex; flex-direction:column; flex:1; }
#container .ritual-product h4 { font-size:13.718px; font-weight:400; line-height:1.45; min-height:65px; margin-bottom:9px; }
#container .ritual-product h4 a { min-height:0; color:#46515b; }
#container .ritual-product .price { font-size:17.1475px; line-height:1.3; font-weight:600; color:#414b43; margin:auto 46px 0 0; min-height:36px; display:flex; align-items:center; flex-wrap:wrap; gap:5px; }
#container .ritual-product .price-new { color:#414b43; }
#container .ritual-product .price-old { font-size:12.00325px; display:inline; margin-left:7px; }
#container .ritual-product .button { position:static; width:auto; display:contents; margin:0; padding:0; border:0; min-height:0; }
#container .ritual-product .button .product-add { position:absolute; bottom:13px; right:13px; width:36px; height:36px; min-height:36px; padding:0; flex:none; display:grid; place-items:center; background:var(--boutique-green); border:1px solid var(--boutique-green); border-radius:4px; }
#container .ritual-product .product-add :is(.cart-action-label,.cart-action-short) { display:none; }
#container .ritual-product .product-add .cart-action-icon { display:grid; width:18px; height:18px; color:white; font-size:13.718px; }
#container .ritual-product .button .product-wish { position:absolute; top:8px; right:8px; background:#fffE; color:#7b857c; border:0; width:36px; height:36px; min-height:36px; border-radius:50%; font-size:15.43275px; }
.product-badge { top:10px; left:10px; border-radius:3px; padding:3px 7px; font-size:9.431125px; }
#container :is(.checkout-heading,.account-heading,.information-heading) { background:none; border-radius:0; padding:8px 0 16px; margin-bottom:14px; border-bottom:1px solid var(--boutique-line); }
#container :is(.checkout-eyebrow,.account-eyebrow,.information-eyebrow) { font-size:9.431125px; letter-spacing:1.4px; }
#container .category-heading { background:#f5f3eb; border:1px solid #ece9df; border-radius:5px; padding:25px 28px; }
#container .category-heading h1 { max-width:100%; }
#container .category-heading .eyebrow { font-size:9.431125px; }
#container .category-intro { font-size:13.718px; max-width:860px; line-height:1.6; margin-top:10px; }
.catalog-toolbar { border-top:0; padding:4px 0 16px; margin:0; justify-content:flex-end; gap:14px; }
.catalog-toolbar label { font-size:11.145875px; }
.catalog-sort { width:245px; }
.catalog-limit { width:90px; }
#container .catalog-toolbar select { min-height:38px; padding-block:7px; font-size:12.00325px; border-radius:4px; }
#container .category-pills a { background:#fafaf6; font-size:12.00325px; }
#container .breadcrumb { font-size:10.2885px; margin-bottom:14px; padding-block:8px; border-bottom:0; }
#container .breadcrumb li:after { display:none; content:none; }
#container .breadcrumb li+li:before { content:'›'; display:inline-block; color:#a0a79e; padding:0 9px; }
#container .breadcrumb li { padding:0; margin:0; border:0; }

/* Product page: side thumbnails, generous photo, compact purchase controls. */
#product-info .product-overview { --bs-gutter-x:32px; margin-top:8px; margin-bottom:28px!important; }
#product-info .product-gallery-column { flex-basis:49%; max-width:49%; }
#product-info .product-summary-column { flex-basis:51%; max-width:51%; }
#container .product-gallery { display:grid; grid-template-columns:68px minmax(0,1fr); gap:12px; top:150px; }
#container .product-photo-stage { grid-column:2; grid-row:1; padding:0; border:1px solid #ebe9e0; border-radius:5px; background:#faf9f5; }
#container .product-photo-link { border-radius:5px; background:#faf9f5; }
#container .product-main-photo { aspect-ratio:4/5; max-height:560px; padding:24px; background:#faf9f5; mix-blend-mode:multiply; }
#container .product-thumbnails { grid-column:1; grid-row:1; display:flex; flex-direction:column; padding:0; gap:9px; max-height:560px; overflow-y:auto; }
#container .product-thumbnail { flex:0 0 68px; height:68px; padding:4px; border-radius:5px; }
.product-thumbnail.is-active { border-color:#789275; box-shadow:none; }
.product-kicker { font-size:12.00325px; margin-bottom:12px; font-weight:400; letter-spacing:1px; }
.product-kicker>span { width:25px; height:25px; font-size:13.718px; }
#product-info #content .product-summary h1 { font-size:31.722875px; line-height:1.15; color:#3e4947; margin-bottom:16px; }
#product-info .product-facts { font-size:12.00325px; gap:5px 15px; margin-bottom:13px; }
#container #product-info .product-pricing { border:0; border-radius:0; padding:8px 0; background:transparent; margin:0 0 14px; }
#container #product-info .product-pricing .price-new { font-size:29.15075px; color:#414c43; font-weight:600; }
#container #product-info #button-cart { background:var(--boutique-green); border-color:var(--boutique-green); border-radius:4px; min-height:44px; font-size:13.718px; }
#container #product-info .product-quantity input { height:44px; min-height:44px; border-radius:4px; }
#container #product-info .product-secondary-actions button { font-size:12.00325px; min-height:38px; border-radius:4px!important; }
#container #product-info .product-details { border-radius:5px; padding-inline:22px; }
#container #product-info .product-details>.nav-tabs .nav-link { font-size:13.718px; border-bottom-color:transparent; }
#container #product-info .product-details>.nav-tabs .nav-link.active { border-bottom-color:var(--boutique-green); }
#container #product-info .product-details .tab-content { font-size:14.575375px; }

/* Checkout keeps every native step and field; only visual density changes. */
#container main .btn-primary,#container #checkout-checkout .btn-primary,#container #checkout-cart .cart-checkout,#container #cart .mini-cart-checkout { background:var(--boutique-green); border-color:var(--boutique-green); border-radius:4px; }
#container main .btn-primary:hover,#container #checkout-checkout .btn-primary:hover,#container #checkout-cart .cart-checkout:hover,#container #product-info #button-cart:hover,#container .ritual-product .button .product-add:hover { background:var(--boutique-dark)!important; border-color:var(--boutique-dark)!important; color:#fff!important; }
#container :is(.checkout-panel,.auth-panel,.cart-summary,.information-article,.contact-location-panel) { border-color:var(--boutique-line); border-radius:5px; background:white; }
#container #checkout-checkout .checkout-panel { border-color:var(--boutique-line); border-radius:5px; padding:20px; }
#container .checkout-progress { display:flex; padding:12px 16px; border:1px solid var(--boutique-line); border-radius:5px; background:#fcfcf9; width:fit-content; gap:18px 28px; margin-bottom:20px; }
.checkout-progress li { font-size:12.00325px; }
.checkout-progress li[aria-current]>span { background:var(--boutique-green); border-color:var(--boutique-green); }
#container #checkout-checkout .checkout-order-summary { background:#fafbf7; }
#container #checkout-checkout legend { font-size:19.719625px; }
#container main :is(.form-control,.form-select) { border-radius:4px; border-color:#e0e4dc; }
.cart-layout { grid-template-columns:minmax(0,1fr) 320px; gap:24px; }
#container .cart-summary { top:155px; border-radius:5px; padding:22px; background:#fcfcf9; }
.cart-summary .summary-icon { display:none; }
#container #shopping-cart .cart-summary h2 { font-size:23.149125px; }
#container #shopping-cart .cart-product { padding:14px; border-radius:5px; border-color:var(--boutique-line); background:#fff; }
#container #shopping-cart .cart-product-name>a { font-size:13.718px; font-weight:400; }
#container #shopping-cart .cart-photo img { width:76px; height:94px; border-radius:4px; }
#container #shopping-cart .cart-product-name ul { font-size:11.145875px; margin-top:5px; }
#container #shopping-cart .cart-line-total { font-size:17.1475px; color:#414d44; }
#container #shopping-cart .cart-totals tr:last-child { font-size:18.86225px; }
#container #cart .mini-cart-panel { border-color:var(--boutique-line); box-shadow:0 12px 30px #344b5d16; }
#container .ritual-footer { background:#f2f3ec; color:#536255; border-top:1px solid var(--boutique-line); }
#container .ritual-footer :is(a,h5,.footer-brand p) { color:#536255; }
.ritual-footer .footer-brand .brand-logo { background:transparent; padding:0; }
.footer-bottom { border-color:#dce1d5; }

@media(min-width:1200px) {
  #container #shopping-cart .cart-product { display:grid; grid-template-columns:76px minmax(0,1fr) 170px 85px; gap:10px 16px; align-items:center; }
  #container #shopping-cart .cart-photo { grid-column:1; grid-row:1 / 3; padding:0; }
  #container #shopping-cart .cart-product-name { grid-column:2; grid-row:1 / 3; padding:0; }
  #container #shopping-cart .cart-quantity { grid-column:3; grid-row:1 / 3; padding:0; align-self:center; }
  #container #shopping-cart .cart-quantity:before { font-size:9.431125px; }
  #container #shopping-cart .cart-unit-price { grid-column:4; grid-row:1; font-size:10.2885px; padding:0; }
  #container #shopping-cart .cart-unit-price:before { font-size:8.57375px; }
  #container #shopping-cart .cart-line-total { grid-column:4; grid-row:2; padding:0; }
}
@media(max-width:1199.98px) {
  .shop-header .masthead { grid-template-columns:190px minmax(180px,1fr) auto; gap:22px; height:76px; }
  .shop-header .masthead>.brand-logo { width:180px; }
  .header-actions { gap:10px; }
  .header-actions #cart>.dropdown>.btn { max-width:140px; }
  .shop-header .navigation-row { min-height:46px; }
  .shop-header .mega-mobile-toggle { min-height:44px; padding-block:8px; }
  .mega-mobile-heading { padding-bottom:14px; }
  .mega-mobile-intro { display:none; }
  .shop-header .mega-all { min-height:44px; margin-block:14px 12px; }
  .mega-intro { display:none; }
  #container .mega-panel-body { display:block; padding:12px 0; }
  #container .mega-feature { display:none; }
  .mega-link-groups { display:block; }
  .mega-link-area { gap:8px; }
  .mega-group { margin:12px 0 16px; }
  .mega-group>ul>li>a,.mega-grandchildren a { min-height:44px; padding-block:10px; }
  .mega-section-heading { align-items:flex-start; flex-direction:column; gap:8px; padding:0 0 12px; }
  .mega-section-heading h2 { display:none; }
  .mega-section-heading p { font-size:12.6034125px; }
  .mega-section-heading>a { min-height:40px; padding:8px 12px; }
  .mega-extra-grid { grid-template-columns:1fr; gap:4px; }
  .boutique-worlds { gap:9px; }
  .world-photo { height:90px; }
  .world-caption { padding:10px 8px; gap:5px; flex-wrap:wrap; }
  .world-caption>.category-emoji { font-size:15.43275px; }
  .world-caption>i { display:none; }
  .world-caption strong { font-size:11.145875px; }
  .world-caption div>span { font-size:9.431125px; }
  #container .ritual-hero { min-height:350px; }
  #container .hero-copy { padding:25px 12px 25px 30px; }
  #content.cosmelina-home .hero-copy h1 { font-size:36.867125px; }
  .hero-description { font-size:13.718px; }
}
@media(max-width:767.98px) {
  .container { padding-inline:16px; }
  .boutique-utility>.container { min-height:26px; font-size:8.57375px; gap:10px; }
  .utility-values { display:none; }
  .preview-note { font-size:7.716375px; }
  .shop-header .masthead { grid-template-columns:1fr auto; grid-template-rows:58px 44px; height:auto; gap:0 10px; padding-bottom:10px; }
  .shop-header .masthead>.brand-logo { grid-column:1; grid-row:1; width:155px; }
  .shop-header .masthead>.header-search { grid-column:1 / -1; grid-row:2; max-width:none; width:100%; bottom:auto; }
  .shop-header .masthead>.header-actions { grid-column:2; grid-row:1; gap:8px; }
  .shop-header .header-search :is(.form-control,.btn) { height:44px; min-height:44px; }
  .shop-header .header-search .form-control { font-size:var(--refined-mobile-input-font); }
  .header-action-label { display:none; }
  .header-actions .icon-link { min-width:32px; min-height:44px; font-size:18.86225px; }
  .locale-options>summary { min-width:28px; font-size:14.575375px; }
  .header-actions #cart>.dropdown>.btn { width:34px; min-height:44px; max-width:34px; padding:0; }
  .header-cart-total { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  .header-actions #cart .btn .fa-cart-shopping { font-size:18.86225px; }
  .shop-header .navigation-row { min-height:44px; }
  #container .mega-panel { left:auto; right:auto; border:0; border-radius:0; box-shadow:none; }
  #container .mega-catalog { padding-inline:20px; }
  .mega-trigger { font-size:16.2043875px!important; }
  .mega-group>ul>li>a,.mega-grandchildren a { font-size:15.30414375px; }
  #container .ritual-hero { padding:0; min-height:0; display:block; }
  .boutique-hero-photo { position:relative; display:block; height:225px; object-fit:cover; object-position:8% center; width:100%; }
  #container .hero-copy { width:100%; padding:24px; background:#f5f1e6; }
  #content.cosmelina-home .hero-copy h1 { font-size:32.58025px; white-space:normal; }
  .hero-copy .eyebrow { font-size:9.431125px; margin-bottom:10px; }
  .hero-description { font-size:13.718px; max-width:none; line-height:1.6; margin-bottom:16px; }
  .hero-footnote { padding-top:14px; font-size:10.2885px; }
  #container .hero-copy .editorial-button { min-height:44px; font-size:12.860625px; }
  .boutique-worlds { grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; padding-block:12px; }
  .world-photo { height:84px; }
  .world-caption { padding:9px 8px; gap:5px; }
  .world-caption>.category-emoji { font-size:14.575375px; }
  .world-caption>div { flex-basis:100%; }
  .world-caption strong { font-size:12.00325px; }
  .world-caption div>span { display:none; }
  #container .care-strip { grid-template-columns:1fr 1fr; padding-block:14px; gap:12px; }
  .care-strip>span { font-size:11.145875px; align-items:flex-start; }
  #container .discovery-section { padding-top:26px; }
  .section-heading h2 { font-size:25.72125px; }
  .discovery-card img { height:150px; }
  .discovery-card>div { padding:16px; }
  .discovery-card h3 { font-size:22.29175px; }
  .discovery-card p { font-size:12.860625px; }
  #container .boutique-spotlight .hero-still-life { min-height:185px; }
  #container .boutique-spotlight .hero-label { left:16px; bottom:20px; max-width:52%; }
  .boutique-spotlight .hero-label strong { font-size:20.577px; }
  #container .boutique-spotlight .hero-photo { left:47%; opacity:.8; }
  .selection-grid { gap:10px; }
  #container .ritual-product>.image { padding:7px; }
  #container .ritual-product .content { padding:10px; }
  #container .ritual-product h4 { font-size:13.718px; min-height:82px; line-height:1.45; }
  #container .ritual-product .price { font-size:16.290125px; margin-right:30px; min-height:44px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
  #container .ritual-product .price-old { font-size:10.2885px; margin:3px 0 0; }
  #container .ritual-product .button .product-add { right:7px; bottom:10px; min-height:44px; height:44px; width:36px; }
  #container .ritual-product .button .product-wish { width:44px; height:44px; min-height:44px; right:2px; top:2px; }
  #container .category-heading { padding:20px; }
  #container #content .category-heading h1 { font-size:25.72125px; }
  #container .category-intro { font-size:12.860625px; }
  .catalog-toolbar { justify-content:stretch; flex-wrap:nowrap; gap:10px; }
  .catalog-sort { flex:1; min-width:0; width:auto; }
  .catalog-limit { width:85px; }
  #container .catalog-toolbar select { min-height:44px; font-size:var(--refined-mobile-input-font); }
  #container .catalog-toolbar label { font-size:10.2885px; }
  #container #shopping-cart .cart-quantity .form-control { font-size:var(--refined-mobile-input-font); }
  #product-info .product-gallery-column,#product-info .product-summary-column { flex:0 0 100%; max-width:100%; }
  #container .product-gallery { display:flex; flex-direction:column; gap:10px; }
  #container .product-main-photo { max-height:420px; aspect-ratio:1; padding:20px; }
  #container .product-thumbnails { flex-direction:row; max-height:none; padding:0 0 4px; }
  #container .product-thumbnail { height:64px; flex-basis:62px; }
  #product-info #content .product-summary h1 { font-size:27.436px; margin-bottom:14px; }
  #container #product-info .product-details { padding-inline:16px; }
  #container #product-info .product-details .tab-content { font-size:14.575375px; }
  .cart-layout { display:block; }
  #container .cart-summary { margin-top:20px; }
  #container .checkout-progress { padding:10px; gap:8px 15px; width:100%; }
  .checkout-progress li { font-size:11.145875px; gap:6px; }
  #container .checkout-progress li>span { flex-basis:23px; height:23px; }
  #container #checkout-checkout .checkout-panel { padding:16px; }
  #container :is(.checkout-heading,.account-heading,.information-heading) { padding-block:6px 13px; }
  #container .ritual-footer :is(a,h5,.footer-brand p) { color:#536255; }
}
@media(max-width:359.98px) {
  .shop-header .masthead>.brand-logo { width:128px; }
  .header-actions { gap:4px!important; }
  .header-actions #cart>.dropdown>.btn { max-width:80px; font-size:7.716375px; }
  .locale-options>summary { min-width:24px; }
  #content.cosmelina-home .hero-copy h1 { font-size:29.15075px; }
  .world-caption strong { font-size:11.145875px; }
  #container .ritual-product h4 { font-size:12.860625px; }
  #container .ritual-product .price { font-size:14.575375px; }
}

#container #display-control>div:nth-child(-n+2) { display:none!important; }
#container #display-control { grid-template-columns:minmax(0,1fr) 110px; max-width:440px; margin-left:auto; }
@media(max-width:575.98px) { #container #display-control { max-width:none; grid-template-columns:minmax(0,1fr) 90px; } }
#container #content .btn-primary,:is(#modal-shipping,#modal-payment) .btn-primary { background:var(--boutique-green); border-color:var(--boutique-green); color:#fff; }
#container #content .btn-primary:hover,:is(#modal-shipping,#modal-payment) .btn-primary:hover { background:var(--boutique-dark)!important; border-color:var(--boutique-dark)!important; color:#fff!important; }

/* Cosmelina in colour: real catalogue photography, clear type, compact controls. */
:root { --boutique-green:#33794e; --boutique-dark:#245e3c; --boutique-paper:#fffdfb; --boutique-line:#e6ebe5; --copy:#45515c; --heading:#34483f; --colour-wash:#e9f6ed; --colour-edge:#c7e2ce; --colour-accent:#33794e; }
[data-tone=mint] { --colour-wash:#e9f6ed; --colour-edge:#c7e2ce; --colour-accent:#33794e; }
[data-tone=rose] { --colour-wash:#fff0f2; --colour-edge:#f1d0d8; --colour-accent:#a84667; }
[data-tone=peach] { --colour-wash:#fff0e3; --colour-edge:#f1d6bd; --colour-accent:#a95f38; }
[data-tone=lavender] { --colour-wash:#f1edfc; --colour-edge:#ddd4f2; --colour-accent:#71568c; }
[data-tone=sky] { --colour-wash:#e9f4fc; --colour-edge:#c9dfee; --colour-accent:#3f7395; }
[data-tone=sun] { --colour-wash:#fff6d9; --colour-edge:#eddfab; --colour-accent:#98622b; }
body { background:#fffdfb; }
#container { background:#fffdfb; }
#container :is(.hero-copy h1,.section-heading h2,.category-heading h1,.product-summary h1,.account-heading h1,.information-heading h1,.checkout-heading h1,.manifesto h2) { font-family:var(--sans,Arial,Helvetica,sans-serif); font-weight:600; letter-spacing:-.6px; color:var(--heading); }
#container .hero-copy h1 em { font-family:inherit; color:#28683f; }
#container .boutique-utility { background:linear-gradient(100deg,#e9f5e9,#fff3dc 55%,#fff0ee); }
#container .boutique-utility a,#container .boutique-utility span { color:#4e6354; }
.shop-header { border-bottom-color:#dbe8dc; }
#container .mega-all { background:#33794e; border-radius:8px; box-shadow:0 3px 8px #33794e10; }
#container .mega-trigger[aria-expanded=true] { color:#28683f; }
#container .mega-panel { border-radius:0 0 14px 14px; border-color:#dfe8df; box-shadow:0 16px 40px #203f3420; }
#container .mega-panel-body { padding:18px; gap:20px; grid-template-columns:190px minmax(0,1fr); }
#container .mega-intro { border-color:#e5ebe3; }
#container .mega-rail>a { padding:7px; gap:9px; border-radius:9px; }
#container .mega-topic-photo { width:40px; height:40px; flex:0 0 40px; object-fit:cover; background:#fff; border-radius:8px; border:1px solid #edf0e9; }
#container .mega-rail strong { font-size:12.6034125px; line-height:1.4; }
#container .mega-rail strong>.category-emoji { font-size:10.802925px; margin-right:4px; }
#container .mega-rail>a.is-current { background:var(--colour-wash); }
#container .mega-section-heading { gap:14px; border:0; background:linear-gradient(110deg,var(--colour-wash),#fff 85%); padding:10px 14px 10px 10px; border-radius:11px; min-height:84px; }
#container .mega-heading-photo { width:80px; height:72px; flex:none; object-fit:cover; border-radius:8px; background:#fff; }
#container .mega-section-heading>div { flex:1; }
#container .mega-section-heading h2 { font:600 19.8053625px/1.2 var(--sans,Arial,sans-serif); color:var(--heading); margin:0 0 5px; }
#container .mega-section-heading p { font-size:11.70316875px; color:#5d6c64; }
#container .mega-section-heading>a { background:#fff; border-color:var(--colour-edge); border-radius:7px; color:var(--copy); }
#container .mega-link-area { gap:17px; }
#container .mega-link-groups { gap:18px; }
#container .mega-group h3 { color:var(--colour-accent); font-size:12.6034125px; font-weight:600; margin-bottom:8px; }
#container .mega-group>ul { display:grid; gap:5px; }
#container .mega-group>ul>li>a.mega-photo-link { display:flex; align-items:center; justify-content:flex-start; gap:10px; padding:4px; min-height:72px; background:#fff; border:1px solid transparent; border-radius:9px; font-size:12.6034125px; line-height:1.35; }
#container .mega-category-photo { width:62px; height:62px; flex:0 0 62px; object-fit:cover; border-radius:8px; background:#fff; border:1px solid #edf0e9; }
#container .mega-link-label { align-items:center; gap:5px; flex:1; min-width:0; overflow-wrap:anywhere; }
#container .mega-link-label>.category-emoji { font-size:11.70316875px; flex:0 0 15px; }
#container .mega-group>ul>li>a:hover,#container .mega-group>ul>li>a:focus-visible { background:var(--colour-wash); border-color:var(--colour-edge); }
#container .mega-grandchildren { border-color:var(--colour-edge); margin-left:27px!important; }
#container .mega-grandchildren a { display:flex; align-items:center; gap:6px; line-height:1.35; font-size:11.70316875px; }
#container .mega-small-photo { flex:0 0 30px; width:30px; height:30px; border-radius:6px; object-fit:cover; background:white; }
#container .mega-panel-footer { background:linear-gradient(100deg,#ecf7ec,#fff7e9); }
#container .mega-topic-photo,#container .mega-heading-photo { object-position:20% center; }
#container .mega-extra-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
#container .mega-extra-grid>a { background:var(--colour-wash); border:1px solid var(--colour-edge); border-radius:10px; padding:9px; gap:8px; }
#container .mega-extra-grid strong { flex:1; }
#container .mega-extra-grid>a>.category-emoji { flex:none; width:auto; font-size:10.802925px; }
#container .mega-extra-grid>a>span:last-child { flex:none; }
#container .ritual-hero { background:#f8f4e8; }
.boutique-hero-photo { filter:brightness(1.035) saturate(1.08); }
#container .hero-copy { padding-block:32px; }
#container .hero-copy .hero-description { color:#4b5b50; }
#container .btn-primary,#container .editorial-button { border-radius:9px; background:#33794e; border-color:#33794e; }
#container .btn-primary:hover,#container .editorial-button:hover { background:#28653f!important; border-color:#28653f!important; }
#container .world-card { border-radius:12px; border:1px solid var(--colour-edge); background:var(--colour-wash); box-shadow:0 5px 16px #33503b06; }
#container .world-photo { height:125px; background:#fff; }
#container .world-caption { background:var(--colour-wash); padding:12px; }
#container .world-caption strong { color:#374d40; font-weight:600; }
#container .world-caption>i { border-radius:50%; background:white; width:25px; height:25px; display:grid; place-items:center; color:var(--colour-accent); font-size:10.2885px; }
#container .care-strip { background:#f4faf0; border-color:#dcebd5; border-radius:10px; }
#container .discovery-card { border-radius:15px; border:1px solid #ede6dc; overflow:hidden; }
#container .discovery-card>div { background:#fff0e3; }
#container .discovery-card.home-fragrance>div { background:#e9f6ed; }
#container .discovery-card h3 { font-family:var(--sans,Arial,sans-serif); font-size:21.434375px; font-weight:600; color:#34483f; }
#container .home-category-chips { gap:9px; }
#container .home-category-chips>a { display:flex; align-items:center; gap:7px; padding:6px 12px 6px 6px; font-size:11.145875px; background:var(--colour-wash); border-color:var(--colour-edge); border-radius:10px; }
#container .home-category-chips img { width:32px; height:32px; object-fit:cover; border-radius:7px; background:white; }
#container .home-category-chips .category-emoji { font-size:10.2885px; }
#container .ritual-product { border-color:#e4eae3; border-radius:12px; box-shadow:0 3px 12px #204a3005; transition:box-shadow .2s,border-color .2s; }
#container .ritual-product:hover { border-color:#b7d2bf; box-shadow:0 8px 22px #204a3012; }
#container .ritual-product>.image { background:linear-gradient(135deg,#fbfcf8,#f0f7ee); }
#container .ritual-product .button .product-add { border-radius:9px; background:#33794e; border-color:#33794e; }
#container .ritual-product .price-new { color:#2f6240; }
#container .ritual-product.has-special-price .price-new,
#container #product-info .product-pricing.has-special-price .price-new { color:#c32e40; }
#container .manifesto { background:linear-gradient(120deg,#edf8e9,#fff2df 65%,#fff0ee); }
#container .manifesto h2 em { color:#397550; font-style:normal; }
#container .ritual-footer { background:#f0f7ec; border-top:1px solid #dfead9; }
#container .ritual-footer .footer-signature { color:#4e684f; }
#container .category-visual-heading { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(230px,.7fr); max-width:none; padding:0; min-height:230px; margin:0 0 22px; overflow:hidden; background:linear-gradient(105deg,var(--colour-wash),#fff 82%); border:1px solid var(--colour-edge); border-radius:16px; }
#container .category-heading-copy { padding:30px 34px; align-self:center; min-width:0; }
#container .category-visual-heading h1 { font-size:30.8655px; line-height:1.16; margin:0 0 12px; max-width:680px; }
#container .category-visual-heading .eyebrow { color:var(--colour-accent); font-size:9.431125px; letter-spacing:1.4px; margin-bottom:13px; }
#container .category-intro { color:#59685f; font-size:12.860625px; line-height:1.65; margin:0; max-width:620px; }
#container .category-heading-art { position:relative; min-width:0; align-self:stretch; display:flex; align-items:center; justify-content:center; padding:14px; }
#container .category-heading-art img { width:100%; height:230px; object-fit:contain; border-radius:13px; mix-blend-mode:multiply; }
#container .category-heading-art[data-cover=true] { padding:0; }
#container .category-heading-art[data-cover=true] img { height:100%; position:absolute; inset:0; width:100%; object-fit:cover; object-position:25% center; border-radius:0; mix-blend-mode:normal; }
#container .category-photo-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:0 0 24px; }
#container .category-photo-grid>a { display:flex; align-items:center; min-width:0; gap:10px; min-height:78px; padding:9px; background:var(--colour-wash); border:1px solid var(--colour-edge); border-radius:11px; color:#45515c; font-size:12.00325px; line-height:1.4; transition:transform .18s,box-shadow .18s; }
#container .category-photo-frame { flex:0 0 60px; width:64px; height:64px; border-radius:8px; overflow:hidden; background:#fff; }
#container .category-photo-frame img { width:100%; height:100%; object-fit:cover; }
#container .category-photo-grid>a>span:nth-child(2) { flex:1; min-width:0; }
#container .category-photo-grid .category-emoji { font-size:11.145875px; margin-right:3px; }
#container .category-photo-arrow { flex:none; color:var(--colour-accent); }
#container .category-photo-grid>a:hover { transform:translateY(-2px); box-shadow:0 5px 14px #203f3410; }
#container .category-story { border-color:var(--colour-edge); }
#container .category-story summary { font-family:var(--sans,Arial,sans-serif); font-weight:500; font-size:17.1475px; }
#container .catalog-toolbar { border-color:#e1e9dd; }
#container .form-control:focus,#container .form-select:focus { border-color:#89b695; box-shadow:0 0 0 3px #ddeddf; }
/* Slightly larger photos for sparse menus, while keeping the rows compact. */
@media(min-width:1200px) {
 #container .mega-link-groups[style="--group-count:2"] .mega-category-photo { width:72px; height:72px; flex-basis:72px; }
}
@media(min-width:1440px) {
 #container .mega-category-photo { width:64px; height:64px; flex-basis:64px; }
}
@media(max-width:1199px) { #container .category-photo-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } #container .mega-panel-body { grid-template-columns:152px minmax(0,1fr); gap:14px; } #container .mega-group>ul>li>a.mega-photo-link { font-size:11.70316875px; gap:6px; } #container .mega-category-photo { width:56px; height:56px; flex-basis:56px; } }
@media(max-width:991px) {
 #container .mega-panel-body { display:block; padding:12px; }
 #container .mega-section-heading { display:grid; grid-template-columns:64px minmax(0,1fr); align-items:center; gap:8px 12px; padding:10px; }
 #container .mega-section-heading h2 { display:block; font-size:16.2043875px; }
 #container .mega-section-heading>a { grid-column:2; justify-self:start; min-height:34px; }
 #container .mega-heading-photo { width:64px; height:64px; }
 #container .mega-link-groups { gap:14px; }
 #container .mega-extra-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #container .category-visual-heading { grid-template-columns:minmax(0,1fr) 34%; min-height:190px; }
 #container .category-heading-copy { padding:22px; }
 #container .category-visual-heading h1 { font-size:25.72125px; }
 #container .category-heading-art img { height:190px; }
 #container .category-photo-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:575px) {
 #container .mega-group>ul>li>a.mega-photo-link { font-size:13.50365625px; padding:6px; }
 #container .mega-category-photo { width:52px; height:52px; flex-basis:52px; }
 #container .mega-section-heading>div { min-width:0; }
 #container .mega-section-heading h2 { font-size:16.2043875px; }
 #container .mega-section-heading>a { padding:6px 9px; font-size:10.802925px; text-align:center; }
 #container .mega-extra-grid { gap:7px; }
 #container .mega-extra-grid>a { flex-wrap:wrap; }
 #container .world-photo { height:95px; }
 #container .world-caption { padding:10px 7px; }
 #container .world-caption>i { display:none; }
 #container .category-visual-heading { grid-template-columns:minmax(0,1fr) 31%; min-height:170px; border-radius:13px; }
 #container .category-heading-copy { padding:20px 15px; }
 #container .category-visual-heading h1 { font-size:23.149125px; }
 #container .category-visual-heading .eyebrow { font-size:8.57375px; letter-spacing:1px; margin-bottom:9px; }
 #container .category-intro { font-size:12.00325px; line-height:1.5; }
 #container .category-heading-art { padding:6px; }
 #container .category-heading-art img { height:155px; }
 #container .category-heading-art[data-cover=true] img { object-position:16% center; }
 #container .category-photo-grid { gap:8px; }
 #container .category-photo-grid>a { gap:7px; padding:7px; min-height:68px; font-size:11.145875px; }
 #container .category-photo-frame { width:46px; height:50px; flex-basis:46px; }
 #container .category-photo-arrow { display:none; }
 #container .hero-copy { padding-block:26px; }
}
@media(prefers-reduced-motion:reduce) { #container .world-card,#container .category-photo-grid>a,#container .ritual-product { transition:none; transform:none; } }

/* Storefront priorities: polishing, cleaning, home fragrance and car care. */
#container .polishing-hero { display:grid; grid-template-columns:1fr 1fr; gap:0; padding:0; background:linear-gradient(115deg,#f1edfc,#faf8f4); }
#container .polishing-hero .boutique-hero-photo { position:relative; inset:auto; z-index:auto; width:100%; height:100%; min-height:350px; max-height:430px; object-position:center; }
#container .polishing-hero .hero-copy { width:auto; padding:32px 38px; }
#container .polishing-hero .hero-footnote { letter-spacing:.2px; }
#container .cosmelina-home>.selection-section { padding-top:28px; padding-bottom:16px; }
#container .boutique-worlds { grid-template-columns:repeat(4,minmax(0,1fr)); }
#container .world-card:first-child { border-color:#b9a4d3; box-shadow:0 3px 12px #71568c14; }
#container .mega-item[data-kind=polishing]>.mega-trigger { color:#71568c; font-weight:600; }
#container .mega-item[data-kind=polishing]>.mega-trigger:after { background:#71568c; }
@media(min-width:1200px) and (max-width:1399px) {
 #container .mega-catalog { gap:12px; }
 #container .mega-topics { gap:14px; justify-content:space-between; }
 #container .mega-trigger { gap:5px; }
}
@media(max-width:991px) {
 #container .polishing-hero { display:block; }
 #container .polishing-hero .boutique-hero-photo { height:260px; min-height:0; }
 #container .polishing-hero .hero-copy { padding:26px 24px; }
 #container .boutique-worlds { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #container .world-card:first-child { grid-column:auto; }
 #container .world-card:first-child .world-photo { height:155px; }
}
@media(max-width:575px) {
 #container .polishing-hero .boutique-hero-photo { height:230px; }
 #container .polishing-hero .hero-copy { padding:24px 20px; }
 #container .boutique-worlds { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #container .world-card:first-child .world-photo { height:150px; }
}

/* Compact navigation: one group at a time, readable full-width mobile rows. */
#container .nav-v2 .mega-panel { max-width:1060px; padding:18px; max-height:min(520px,var(--mega-available-height,65dvh)); border-radius:0 0 12px 12px; overflow-y:auto; }
#container .nav-v2 .nav-back { display:none; }
#container .nav-v2 .nav-panel-header { display:flex; align-items:center; gap:12px; padding:0 0 14px; margin:0 0 12px; border-bottom:1px solid #e6ebe5; }
#container .nav-v2 .nav-panel-header>img { width:52px; height:52px; border-radius:9px; object-fit:cover; flex:none; }
#container .nav-v2 .nav-panel-header>div { flex:1; min-width:0; }
#container .nav-v2 .nav-panel-header h2 { font:600 18.004875px/1.35 var(--sans); margin:0 0 4px; color:#364b40; overflow-wrap:normal; word-break:normal; }
#container .nav-v2 .nav-view-all { display:inline-flex; align-items:center; gap:14px; font-size:12.860625px; color:#32734d; min-height:28px; }
#container .nav-v2 .nav-panel-close { border:1px solid #e0e7dd; background:#f7f9f5; border-radius:50%; width:36px; height:36px; display:grid; place-items:center; flex:none; color:#60716a; }
#container .nav-v2 .nav-group-tabs { display:flex; gap:8px; margin:0 0 12px; border-bottom:1px solid #e6ebe5; }
#container .nav-v2 .nav-group-tab { display:flex; align-items:center; gap:12px; background:transparent; border:0; border-bottom:2px solid transparent; padding:10px 13px; color:#5e6b64; font-size:13.718px; line-height:1.4; text-align:left; }
#container .nav-v2 .nav-group-tab[aria-selected=true] { color:var(--colour-accent,#33794e); border-bottom-color:currentColor; font-weight:600; background:var(--colour-wash,#f0f5ed); border-radius:6px 6px 0 0; }
#container .nav-v2 .nav-group-tab>i { display:none; }
#container .nav-v2 .nav-group-pane,#container .nav-v2 .nav-extra-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 16px; align-items:start; }
#container .nav-v2 [hidden] { display:none!important; }
#container .nav-v2 .nav-category-card { min-width:0; border:1px solid #edf0e9; border-radius:8px; overflow:hidden; }
#container .nav-v2 .nav-category-link { display:flex; align-items:center; gap:10px; min-width:0; min-height:64px; padding:9px; border-radius:8px; font-size:13.718px; line-height:1.45; color:#46575b; background:#fff; }
#container .nav-v2 .nav-category-link:hover,#container .nav-v2 .nav-category-link:focus-visible { background:var(--colour-wash,#f2f6ef); color:#2e6746; }
#container .nav-v2 .nav-category-link>img { width:44px; height:44px; flex:0 0 44px; object-fit:cover; border-radius:7px; }
#container .nav-v2 .nav-item-name { flex:1; min-width:0; overflow-wrap:normal; word-break:normal; hyphens:none; }
#container .nav-v2 .nav-item-name .category-emoji { font-size:11.145875px; margin-right:5px; }
#container .nav-v2 .nav-category-link>i { flex:none; font-size:8.57375px; color:#89978e; }
#container .nav-v2 .nav-extra-list .nav-category-link { border:1px solid #edf0e9; }
#container .nav-v2 .nav-subcategories { border-top:1px solid #edf0e9; font-size:12.860625px; }
#container .nav-v2 .nav-subcategories summary { cursor:pointer; display:flex; align-items:center; justify-content:space-between; padding:8px 12px; color:#63776b; min-height:36px; list-style:none; }
#container .nav-v2 .nav-subcategories summary::-webkit-details-marker { display:none; }
#container .nav-v2 .nav-subcategories[open] summary>span { transform:rotate(45deg); }
#container .nav-v2 .nav-subcategories ul { list-style:none; margin:0; padding:0 10px 8px; }
#container .nav-v2 .nav-subcategories li a { display:block; padding:8px; line-height:1.5; overflow-wrap:normal; word-break:normal; border-radius:5px; }
#container .nav-v2 .nav-subcategories li a:hover { background:#f0f5ed; }
#container .nav-v2 .nav-utility-links { display:flex; justify-content:flex-end; gap:24px; padding:12px 0 0; margin-top:12px; border-top:1px solid #e6ebe5; font-size:12.860625px; }
#container .nav-v2 .nav-utility-links a { display:flex; gap:12px; align-items:center; min-height:32px; }
#container .nav-v2 .mega-trigger>span { overflow-wrap:normal; word-break:normal; }
@media(max-width:1199px) {
 #container .nav-v2 .mega-catalog { width:min(420px,100vw); padding:0 16px 20px; overflow-y:auto; }
 #container .nav-v2 .mega-mobile-heading { position:sticky; top:0; z-index:2; background:#fff; padding:16px 0; margin-bottom:12px; gap:12px; }
 #container .nav-v2 .mega-mobile-heading>img { width:170px; max-width:65%; }
 #container .nav-v2 .mega-mobile-close { width:42px; height:42px; flex:none; }
 #container .nav-v2 .mega-all { min-height:44px; margin-bottom:10px; font-size:15.30414375px; }
 #container .nav-v2 .mega-item { border-bottom:1px solid #e6ebe5; }
 #container .nav-v2 .mega-trigger { min-height:56px; padding:10px 2px; font-size:16.2043875px; gap:10px; white-space:normal; text-align:left; }
 #container .nav-v2 .mega-trigger>.category-emoji { width:32px; height:32px; flex:0 0 32px; display:grid; place-items:center; padding:0; margin:0; font-size:16.2043875px; }
 #container .nav-v2 .mega-trigger>span:not(.category-emoji) { flex:1; min-width:0; }
 #container .nav-v2 .mega-chevron { flex:none; transform:rotate(-90deg); }
 #container .nav-v2 .mega-panel { position:static; max-height:none; overflow:visible; width:auto; max-width:none; padding:0; margin:0; border:0; border-radius:0; box-shadow:none; background:#fff; }
 #container .nav-v2 .mega-catalog.has-active-panel>.mega-all,#container .nav-v2 .mega-catalog.has-active-panel>.mega-mobile-footer,#container .nav-v2 .mega-catalog.has-active-panel .mega-item:not(.is-active),#container .nav-v2 .mega-catalog.has-active-panel .mega-item.is-active>.mega-trigger { display:none; }
 #container .nav-v2 .mega-item.is-active { border:0; }
 #container .nav-v2 .nav-back { display:flex; align-items:center; gap:12px; border:0; background:transparent; font-size:14.575375px; min-height:44px; padding:6px 2px 12px; color:#4f6c5a; text-align:left; }
 #container .nav-v2 .nav-back>span { min-width:0; overflow-wrap:normal; word-break:normal; }
 #container .nav-v2 .nav-panel-header { padding-bottom:14px; margin-bottom:12px; gap:10px; }
 #container .nav-v2 .nav-panel-header>img { width:48px; height:48px; }
 #container .nav-v2 .nav-panel-header h2 { font-size:17.1475px; }
 #container .nav-v2 .nav-view-all { font-size:13.718px; min-height:36px; }
 #container .nav-v2 .nav-panel-close { display:none; }
 #container .nav-v2 .nav-group-tabs { display:grid; grid-template-columns:minmax(0,1fr); gap:0; border:0; }
 #container .nav-v2 .nav-group-tab { min-height:56px; justify-content:space-between; padding:12px 8px; border:0; border-bottom:1px solid #e7ece3; font-size:15.43275px; color:#45574e; }
 #container .nav-v2 .nav-group-tab>span { min-width:0; overflow-wrap:normal; word-break:normal; }
 #container .nav-v2 .nav-group-tab>i { display:block; font-size:9.431125px; flex:none; }
 #container .nav-v2 .nav-group-tabs.has-selection { display:none; }
 #container .nav-v2 .nav-group-pane,#container .nav-v2 .nav-extra-list { grid-template-columns:minmax(0,1fr); gap:8px; }
 #container .nav-v2 .nav-category-link { min-height:64px; font-size:14.575375px; padding:9px; gap:12px; }
 #container .nav-v2 .nav-subcategories { font-size:13.718px; }
 #container .nav-v2 .nav-subcategories summary,#container .nav-v2 .nav-subcategories li a { min-height:44px; padding:10px 12px; }
 #container .nav-v2 .nav-utility-links { justify-content:space-between; gap:12px; }
 #container .nav-v2 .mega-mobile-footer { margin-top:20px; padding-top:12px; }
 #container .nav-v2 .mega-mobile-footer a { min-height:44px; }
}
/* Human-readable labels wrap at spaces, with enough room for a complete word. */
@media(max-width:575px) {
 #container .category-photo-grid { grid-template-columns:minmax(0,1fr); }
 #container .category-photo-grid>a { min-height:66px; padding:8px 10px; gap:12px; font-size:14.575375px; }
 #container .category-photo-grid>a>span:not(.category-photo-frame) { min-width:0; overflow-wrap:normal; word-break:normal; hyphens:none; }
 #container .category-photo-frame { width:48px; height:48px; flex:0 0 48px; }
 #container .category-heading-copy h1,#container .world-caption strong,#container .ritual-product h4,#container .ritual-product h4 a,#container .catalog-toolbar label { overflow-wrap:normal; word-break:normal; hyphens:none; }
 #container .catalog-toolbar { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
 #container .catalog-sort,#container .catalog-limit { min-width:0; }
}
@media(max-width:575px) {
 #container .ritual-product h4 a { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; }
 #container .ritual-product .button .product-add { width:44px; height:44px; min-height:44px; }
 #container .ritual-product .price { margin-right:44px; }
 #container .catalog-limit { width:100%; }
}
@media(max-width:575px) {
 #container .breadcrumb a,#container :is(#content,#product-info) :is(h1,h2,h3) { overflow-wrap:normal; word-break:normal; hyphens:none; }
 #container .shop-header .masthead { grid-template-columns:minmax(0,1fr) auto; column-gap:6px; }
 #container .shop-header .masthead>.brand-logo { width:clamp(110px,35vw,155px); max-width:100%; }
 #container .shop-header .masthead>.header-actions { gap:0; }
 #container .shop-header .header-actions .icon-link,#container .shop-header .locale-options>summary,#container .shop-header .header-actions #cart>.dropdown>.btn { width:44px; min-width:44px; max-width:44px; min-height:44px; }
}

/* Compact checkout only: retain native fields, validation and AJAX targets. */
#container #checkout-checkout.checkout-compact { padding-top:12px; padding-bottom:24px; }
#container .checkout-compact>.breadcrumb { padding:0 0 6px; margin-bottom:8px; line-height:1.3; }
#container .checkout-compact .checkout-topbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 16px; margin-bottom:12px; }
#container .checkout-compact .checkout-topbar>.checkout-heading { padding:0; margin:0; border:0; }
#container .checkout-compact .checkout-eyebrow { display:none; }
#container .checkout-compact .checkout-topbar>.checkout-heading h1 { font-size:22.29175px; }
#container .checkout-compact .checkout-progress { padding:6px 10px; margin-bottom:0; gap:10px 20px; }
#container .checkout-compact .checkout-progress li { font-size:12.00325px; gap:6px; }
#container .checkout-compact .checkout-progress li>span { flex-basis:22px; height:22px; }
#container #checkout-checkout.checkout-compact .checkout-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; margin:0; align-items:start; }
#container .checkout-compact .checkout-layout>div { min-width:0; width:auto; padding:0; }
#container #checkout-checkout.checkout-compact .checkout-panel { padding:14px; margin-bottom:12px!important; border-radius:8px; }
#container #checkout-checkout.checkout-compact #checkout-register>form>p:first-child { padding:7px 10px; margin-bottom:8px; line-height:1.4; }
#container #checkout-checkout.checkout-compact fieldset { margin-bottom:6px; }
#container #checkout-checkout.checkout-compact legend { font-family:var(--sans); font-size:18.004875px; font-weight:600; padding:0 0 6px; margin-bottom:9px; line-height:1.25; }
#container .checkout-compact .row { --bs-gutter-x:12px; }
#container #checkout-checkout.checkout-compact .col.mb-3 { margin-bottom:6px!important; }
#container #checkout-checkout.checkout-compact :is(.form-label,.form-check-label) { font-size:13.718px; margin-bottom:3px; line-height:1.3; }
#container #checkout-checkout.checkout-compact .form-label { display:block; }
#container #checkout-checkout.checkout-compact :is(.form-control,.form-select) { min-height:38px; padding:7px 10px; border-radius:5px; font-size:14.575375px; line-height:1.35; }
#container #checkout-checkout.checkout-compact .form-select { padding-right:30px; }
#container .checkout-compact .form-check-inline { display:inline-flex; align-items:center; gap:7px; margin:0 16px 0 0; padding-block:4px; }
#container .checkout-compact .form-check-inline .form-check-input { flex-shrink:0; }
#container .checkout-compact .form-check-inline .form-check-label { margin:0; }
#container #checkout-checkout.checkout-compact .checkout-method-options { gap:6px; margin:0; }
#container #checkout-checkout.checkout-compact .checkout-method-label { min-height:42px; padding:10px 10px 10px 34px; gap:4px 8px; font-size:13.718px; line-height:1.3; }
#container #checkout-checkout.checkout-compact .checkout-method-option>.form-check-input { width:16px; height:16px; left:10px; top:13px; }
#container .checkout-compact .checkout-method-price { font-size:12.00325px; white-space:nowrap; }
#container .checkout-compact .checkout-method-hint { margin:6px 0 0; font-size:12.00325px; line-height:1.4; }
#container .checkout-compact .checkout-method-hint:empty { display:none; }
#container #checkout-checkout.checkout-compact .checkout-method-option .sameday-locker-map-wrap { margin:0 10px 9px 34px!important; }
#container .checkout-compact .sameday-locker-map-wrap .btn { min-height:36px; padding:6px 9px; font-size:12.860625px; }
#container .checkout-compact #checkout-payment-method>br { display:none; }
#container #checkout-checkout.checkout-compact #input-comment { min-height:48px; height:48px; }
#container .checkout-compact #checkout-payment-method>.form-check { margin-top:10px!important; }
#container #checkout-checkout.checkout-compact .order-summary-title { font-family:var(--sans); font-size:18.004875px; font-weight:600; margin-bottom:9px; }
#container #checkout-checkout.checkout-compact .order-review { margin-bottom:12px; font-size:13.718px; line-height:1.4; }
#container #checkout-checkout.checkout-compact .order-review :is(td,th) { padding:8px 0; }
#container #checkout-checkout.checkout-compact .order-review :is(td,th):first-child { padding-right:12px; }
#container #checkout-checkout.checkout-compact .order-review small { font-size:11.145875px; }
#container #checkout-checkout.checkout-compact .order-review ul { margin-top:3px; }
#container #checkout-checkout.checkout-compact .order-review tfoot tr:last-child { font-size:18.86225px; }
#container #checkout-checkout.checkout-compact #checkout-payment .btn { min-height:44px; padding:9px 12px; font-size:14.575375px; }
#container .checkout-compact #checkout-confirm { background:#f4f8f1; }
#container:has(.checkout-compact) .announcement { display:none; }
#container .checkout-compact :is(.checkout-address-extra,.checkout-note) { width:100%; padding:0 6px; margin:2px 0 8px; font-size:12.860625px; }
#container .checkout-compact :is(.checkout-address-extra,.checkout-note)>summary { cursor:pointer; color:#526c57; padding:7px 0; line-height:1.4; }
#container .checkout-compact .checkout-address-extra>.row { margin-top:6px; }
#container .checkout-compact .checkout-note { padding:0; }
#container .checkout-compact .checkout-note textarea { margin-top:5px; }
@media(min-width:992px) {
  #container #checkout-checkout.checkout-compact .checkout-layout { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); }
  #container .checkout-compact .checkout-details-column { grid-column:1; grid-row:1/3; }
  #container .checkout-compact .checkout-methods-column { grid-column:2; }
  #container .checkout-compact .checkout-summary-column { grid-column:2; }
  #container:has(.checkout-compact) .shop-header .masthead { height:64px; }
  #container:has(.checkout-compact) .shop-header .masthead>.brand-logo { width:170px; }
  #container:has(.checkout-compact) .shop-header { position:relative; }
  #container:has(.checkout-compact) .shop-header .navigation-row { display:none; }
}
@media(min-width:1200px) {
  #container #checkout-checkout.checkout-compact .checkout-layout { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr); gap:14px; }
  #container .checkout-compact .checkout-details-column { grid-row:1; }
  #container .checkout-compact .checkout-summary-column { grid-column:3; }
}
@media(max-width:767.98px) {
  #container #checkout-checkout.checkout-compact { --checkout-input-font:16px; }
  #container #checkout-checkout.checkout-compact :is(.form-control,.form-select) { font-size:var(--checkout-input-font); min-height:44px; }
  #container #checkout-checkout.checkout-compact .checkout-panel { padding:12px; margin-bottom:0!important; }
  #container .checkout-compact .checkout-progress { gap:8px 12px; padding:7px; }
  #container .checkout-compact .checkout-progress li { font-size:11.145875px; }
  #container .checkout-compact #form-register>fieldset:first-of-type>.row-cols-1 { --bs-gutter-x:10px; }
  #container .checkout-compact #form-register>fieldset:first-of-type>.row-cols-1>.col { width:50%; }
  #container .checkout-compact #form-register>fieldset:first-of-type>.row-cols-1>.col:has(#input-email),
  #container .checkout-compact #form-register>fieldset:first-of-type>.row-cols-1>.col:has(#input-telephone),
  #container .checkout-compact #form-register>fieldset:first-of-type>.row-cols-1>.custom-field { width:100%; }
  #container #checkout-checkout.checkout-compact .checkout-method-label { min-height:46px; }
  #container #checkout-checkout.checkout-compact .checkout-method-option>.form-check-input { top:15px; }
  #container .checkout-compact .checkout-method-price { flex-basis:auto; }
  #container .checkout-compact .sameday-locker-map-wrap .btn { min-height:44px; }
}

/* Four editorial worlds, with a fixed frame so rotation never moves the page. */
#container .home-hero { position:relative; padding-top:0; margin-top:0; }
.home-hero-stage { display:grid; touch-action:pan-y; }
#container .home-hero-slide { --hero-wash:#f4f0fa; display:grid; grid-template-columns:1fr 1fr; min-height:430px; background:var(--hero-wash); border-radius:14px; overflow:hidden; }
#container .home-hero-slide { grid-area:1/1; }
/* Hidden slides reserve their natural height, keeping the page still on rotation. */
#container .home-hero-slide[hidden] { display:grid!important; visibility:hidden; pointer-events:none; }
#container .home-hero-controls[hidden],#container .home-hero-tabs[hidden] { display:none; }
#container .home-hero-slide[data-banner=cleaning] { --hero-wash:#edf6ed; }
#container .home-hero-slide[data-banner=home] { --hero-wash:#fff2e5; }
#container .home-hero-slide[data-banner=cars] { --hero-wash:#edf3f6; }
.home-hero-art { position:relative; min-width:0; overflow:hidden; }
.home-hero-art>img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.home-hero-edition { position:absolute; bottom:20px; left:22px; padding:7px 11px; background:#ffffffdf; border-radius:20px; font-size:9.431125px; letter-spacing:1.2px; color:#46554b; }
.home-hero-copy { min-width:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:55px 42px 34px; }
.home-hero-eyebrow { font-size:10.2885px; font-weight:600; letter-spacing:2px; color:#687564; margin:0 0 18px; }
#content.cosmelina-home .home-hero-copy :is(h1,h2) { font-family:var(--sans); font-size:clamp(27.436px,2.8293375vw,44.5835px); line-height:1.1; letter-spacing:-1.4px; color:#354b41; margin:0 0 21px; }
.home-hero-copy :is(h1,h2)>span { display:block; }
.home-hero-description { font-size:14.575375px; line-height:1.65; color:#52665b; max-width:440px; margin:0 0 24px; }
#container .home-hero-link { display:inline-flex; align-items:center; gap:28px; background:#33794e; border-color:#33794e; border-radius:6px; min-height:44px; padding:11px 19px; font-size:12.860625px; color:#fff; }
.home-hero-link>span { font-size:18.86225px; line-height:1; }
.home-hero-note { font-size:10.2885px; color:#6c786d; margin:20px 0 0; line-height:1.5; }
.home-hero-controls { position:absolute; top:16px; right:46px; display:flex; gap:5px; z-index:2; }
.home-hero-controls>button { display:grid; place-items:center; width:36px; height:36px; border:1px solid #d8e1d9; border-radius:50%; background:#ffffffd9; color:#45654f; font-size:10.2885px; }
.home-hero-controls>button:hover { background:#fff; border-color:#6d9479; }
.home-hero-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; padding-top:10px; }
.home-hero-tabs>button { position:relative; display:flex; align-items:center; gap:12px; text-align:left; min-width:0; min-height:54px; padding:13px 17px; background:#f7f8f4; color:#65726a; border:1px solid #e3e8df; border-radius:7px; overflow:hidden; font-size:13.718px; }
.home-hero-tabs>button[aria-pressed=true] { background:#eaf3e8; color:#2e6746; border-color:#aec9b5; font-weight:600; }
.home-hero-number { font-size:10.2885px; opacity:.65; font-variant-numeric:tabular-nums; }
.home-hero-progress { position:absolute; bottom:0; left:0; width:100%; height:3px; background:#388557; transform:scaleX(0); transform-origin:left; }
.is-playing .home-hero-tabs>button[aria-pressed=true] .home-hero-progress { animation:home-hero-progress 7s linear forwards; }
.home-hero-controls>button:focus-visible,.home-hero-tabs>button:focus-visible,.home-hero-link:focus-visible { outline:2px solid #33794e; outline-offset:3px; }
@keyframes home-hero-progress { to { transform:scaleX(1); } }
@media(prefers-reduced-motion:no-preference) {
 .home-hero-slide:not([hidden]) .home-hero-copy { animation:home-hero-reveal .38s ease-out both; }
 @keyframes home-hero-reveal { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
}
@media(min-width:768px) { #container .home-hero-slide { height:440px; } }
@media(max-width:1199.98px) {
 .home-hero-copy { padding:52px 26px 26px; }
 #content.cosmelina-home .home-hero-copy :is(h1,h2) { font-size:32.58025px; }
 .home-hero-description { font-size:13.718px; }
 .home-hero-controls { right:36px; }
}
@media(max-width:767.98px) {
 #container .home-hero-slide { display:flex; flex-direction:column; min-height:0; border-radius:10px; }
 #container .home-hero-slide[hidden] { display:flex!important; }
 .home-hero-art { height:205px; flex:none; }
 .home-hero-copy { padding:23px 22px; min-height:280px; flex:1; }
 #content.cosmelina-home .home-hero-copy :is(h1,h2) { font-size:29.15075px; margin-bottom:14px; letter-spacing:-.8px; }
 .home-hero-eyebrow { font-size:9.431125px; margin-bottom:12px; letter-spacing:1.4px; }
 .home-hero-description { font-size:13.718px; line-height:1.5; margin-bottom:17px; }
 .home-hero-note { font-size:10.2885px; margin-top:16px; }
 .home-hero-edition { left:14px; bottom:13px; font-size:8.57375px; }
 .home-hero-controls { top:12px; right:32px; }
 .home-hero-controls>button { width:44px; height:44px; }
 .home-hero-tabs { gap:5px; padding-top:7px; }
 .home-hero-tabs>button { flex-direction:column; justify-content:center; gap:3px; text-align:center; padding:7px 3px; min-height:56px; font-size:11.145875px; line-height:1.3; }
 .home-hero-number { font-size:8.57375px; }
}
