/* A common brand rhythm across the storefront, with an editorial home page. */
.announcement{height:29px;font-size:10px;letter-spacing:.6px;background:#49212f}
.masthead{min-height:84px;padding-block:15px}
.masthead .wordmark>span{font-size:30px;letter-spacing:3.4px}
.masthead-help{font-size:11px}.masthead-help>span{font-size:10px}
.shop-navigation{height:48px;gap:29px}
.shop-navigation>a,.nav-entry>a,.nav-disclosure>summary{font-size:12px}
.mega-menu>div>a{font-size:13px;min-height:37px}
.rose-campaign.campaign-hero{--hero-header-height:161px;display:grid;grid-template-columns:1.08fr 1fr;align-items:center;min-height:max(500px,calc(100svh - var(--hero-header-height)));padding:48px max(6%,calc((100vw - 1440px)/2)) 76px;gap:6%;background:#100e0f}
.rose-campaign .campaign-roses{width:100%;height:100%;opacity:.55;object-position:center;z-index:-2}
.rose-campaign:after{z-index:-1;background:linear-gradient(90deg,#100b0fcc 0%,#100b0f55 50%,#100b0f22 100%);pointer-events:none}
.rose-campaign .campaign-copy{position:relative;z-index:2;max-width:630px;width:100%;padding:0}
.rose-campaign .campaign-copy .eyebrow{font-size:10px;line-height:1.7;letter-spacing:2.2px;margin-bottom:26px;max-width:none;color:#d0b99f}
.rose-campaign .campaign-copy h1{font-size:clamp(64px,5.8vw,108px);line-height:1.02;letter-spacing:-1.8px;margin:0 0 27px}
.rose-campaign .campaign-copy h1 em{color:#c99d8d}
.rose-campaign .campaign-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#d6c8bb;margin-bottom:30px;max-width:430px}
.rose-campaign .campaign-actions{flex-wrap:wrap;gap:22px 25px}
.rose-campaign .campaign-actions .button{min-height:52px;padding:17px 24px;font-size:12px;letter-spacing:.1px;background:#e7d7c3;color:#24191b;border-color:#e7d7c3}
.rose-campaign .campaign-actions .button:hover{background:#f2e5d4}
.rose-campaign .campaign-actions .text-link{font-size:12px}
.rose-campaign .campaign-product{position:relative;z-index:2;width:100%;max-width:min(580px,calc(100svh - var(--hero-header-height) - 130px));min-width:0;justify-self:center;margin:0;transform:none;opacity:1}
.rose-campaign .campaign-product>span{display:flex}
.rose-campaign .campaign-scroll{left:6%;transform:none;bottom:24px;padding:10px 0;font-size:10px;letter-spacing:.7px}
.atelier-promise-strip{display:flex;justify-content:center;align-items:center;gap:5%;padding:23px 5%;background:#eee9e1;color:#67584d;font-size:11px;letter-spacing:.45px;border-bottom:1px solid #d8cfc4}
.atelier-promise-strip>span+span:before{content:'✧';margin-right:clamp(15px,4vw,64px);color:#926d5b}
.template-index .section{padding:92px max(5%,calc((100vw - 1480px)/2))}
.template-index .merch-heading{margin-bottom:36px;align-items:flex-end}
.template-index .merch-heading h2{font-size:clamp(38px,3.4vw,54px);letter-spacing:-1px;margin-bottom:0}
.template-index .merch-heading .eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:15px}
.template-index .merch-heading>.text-link{font-size:12px}
.signature-intro{font-size:13px;line-height:1.9;color:#79685c;margin:18px 0 0}
.brand-signatures .product-grid{gap:24px}
.brand-signatures .product-description{padding-top:20px}
.brand-signatures .product-description>p{font-size:9px;letter-spacing:1.5px;margin-bottom:10px}
.brand-signatures .product-description h3{font:17px/1.6 var(--sans);margin-bottom:8px}
.brand-signatures .product-price{font-size:14px}
.brand-signatures .save-button{background:#f7f3ecd9;backdrop-filter:blur(5px)}
.brand-signatures .quick-view{font-size:12px;padding:16px 20px}
.collection-stories{background:#eae4db}
.collection-stories-intro{max-width:600px;font-size:13px;line-height:1.9;color:#79685c;margin:18px 0 0}
.collection-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.collection-story{display:block;min-width:0}
.collection-story>img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.collection-story>div{padding-top:24px}
.collection-story .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:10px;color:#8b6b58}
.collection-story h3{font:34px/1.1 var(--serif);letter-spacing:-.5px;margin:0 0 12px}
.collection-story-mood{font-size:13px;line-height:1.8;color:#79685c;margin:0 0 16px}
.collection-story-product{font-size:11px;line-height:1.8;color:#67584d;margin:0 0 20px;padding-top:14px;border-top:1px solid #d1c6ba}
.collection-story .text-link{font-size:12px;gap:15px}
.collection-story-lead{position:relative;align-self:stretch;background:#1c1617;color:#f2e7de}
.collection-story-lead>img{position:absolute;height:100%;aspect-ratio:auto;object-position:center}
.collection-story-lead>div{position:relative;margin-top:60%;padding:70px 35px 32px;background:linear-gradient(transparent,#160f13e8 55%)}
.collection-story-lead .eyebrow{color:#dbbca4}
.collection-story-lead h3{font-size:48px;margin-bottom:14px}
.collection-story-lead p:not(.eyebrow){font-size:13px;line-height:1.8;color:#deccbf}
.collection-story-lead .text-link{color:#f1e6db;border-color:#9f8572}
.brand-manifesto{display:grid;grid-template-columns:1fr 1fr;min-height:680px;background:#21161b;color:#efe4d9}
.manifesto-image{position:relative;overflow:hidden}
.manifesto-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:30% center}
.manifesto-copy{padding:75px 13%;align-self:center}
.manifesto-copy>svg{width:36px;height:47px;color:#b3917e;margin-bottom:25px}
.manifesto-copy>.eyebrow{font-size:9px;letter-spacing:2px;color:#c4a590}
.manifesto-copy h2{font-size:clamp(50px,4.8vw,78px);line-height:1.02;letter-spacing:-1.5px;margin-bottom:27px}
.manifesto-copy h2 em{color:#cda193}
.manifesto-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#cdb8aa;max-width:370px;margin-bottom:18px}
.manifesto-copy .text-link{font-size:12px;color:#efe4d9;margin-top:14px;border-color:#9a7c6c}
.atelier-experience{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}
.atelier-experience-photo{position:relative;height:100%;min-height:610px}
.atelier-experience-photo>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}
.atelier-experience-photo>span{position:absolute;left:28px;bottom:28px;color:#f3e8db;font-size:9px;letter-spacing:2px}
.atelier-experience-copy>.eyebrow{font-size:10px;letter-spacing:2px}
.atelier-experience-copy h2{font-size:53px;letter-spacing:-1px;line-height:1.1;margin-bottom:20px}
.atelier-experience-intro{font-size:14px;line-height:1.9;color:#79685c;margin-bottom:27px;max-width:490px}
.atelier-experience-steps{list-style:none;margin:0 0 28px;padding:0}
.atelier-experience-steps>li{display:flex;gap:25px;border-top:1px solid #dbd2c8;padding:23px 0}
.atelier-experience-steps>li>span{font:22px/1.5 var(--serif);color:#95705b}
.atelier-experience-steps h3{font-size:27px;margin-bottom:7px;letter-spacing:-.3px}
.atelier-experience-steps p{font-size:12px;line-height:1.9;color:#79685c;margin-bottom:0;max-width:440px}
.atelier-experience-copy>.button{min-height:52px;font-size:12px}
.client-care-ribbon{display:flex;align-items:center;justify-content:space-between;padding:32px 5%;gap:30px;background:#e9e2d8;border-block:1px solid #d7cabe}
.client-care-ribbon>p{font:27px/1.3 var(--serif);margin:0}
.client-care-ribbon>div{display:flex;gap:34px}
.client-care-ribbon a{font-size:12px;padding-block:10px;border-bottom:1px solid #bfae9b}
.client-care-ribbon a>span{margin-left:10px}
.footer-main{padding-top:12px}.footer-column>a{font-size:12px;line-height:1.7}.footer-column>span{font-size:10px;letter-spacing:1.5px}
@media(min-width:761px) and (max-width:1100px){
 .shop-navigation{gap:18px}.shop-navigation>a,.nav-entry>a,.nav-disclosure>summary{font-size:11px}
 .rose-campaign.campaign-hero{gap:4%;padding-inline:5%}.rose-campaign .campaign-copy h1{font-size:64px}
 .collection-story-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.collection-story h3{font-size:29px}.collection-story-lead h3{font-size:37px}.collection-story-lead>div{padding-inline:25px}
 .manifesto-copy{padding:55px 10%}.brand-manifesto{min-height:580px}.atelier-experience{gap:6%}.atelier-experience-copy h2{font-size:43px}.client-care-ribbon{flex-direction:column;text-align:center;gap:14px}
}
@media(max-width:760px){
 .announcement{height:28px;font-size:9px}.masthead{min-height:78px;padding:16px}.masthead .wordmark>span{font-size:20px;letter-spacing:1.1px}.masthead .wordmark small{font-size:5px}.mobile-toggle{top:22px}
 .shop-navigation{height:auto;gap:0;max-height:calc(100dvh - 106px)}.shop-navigation>a,.nav-entry>a,.nav-disclosure>summary{font-size:13px}.mega-menu>div>a{font-size:12px}
 .rose-campaign.campaign-hero{--hero-header-height:106px;min-height:max(590px,calc(100svh - var(--hero-header-height)));grid-template-columns:1fr;align-content:center;padding:24px 7% 72px;gap:22px}
 .rose-campaign .campaign-roses{opacity:.58;object-position:65% center}.rose-campaign:after{background:linear-gradient(0deg,#100b0fcc,transparent 90%)}
 .rose-campaign .campaign-copy{grid-column:1;grid-row:2;width:100%;max-width:440px;padding:0}.rose-campaign .campaign-copy .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:15px;max-width:none}
 .rose-campaign .campaign-copy h1{font-size:clamp(43px,12vw,64px);line-height:1.02;letter-spacing:-1.2px;margin-bottom:18px}
 .rose-campaign .campaign-copy>p:not(.eyebrow){font-size:12px;line-height:1.8;max-width:320px;margin-bottom:22px;padding:0}.rose-campaign .campaign-copy>p br{display:block}
 .rose-campaign .campaign-actions{flex-direction:row;align-items:center;gap:16px;flex-wrap:wrap}.rose-campaign .campaign-actions .button{font-size:11px;padding:14px 17px;min-height:48px;gap:20px}.rose-campaign .campaign-actions .text-link{font-size:11px}
 .rose-campaign .campaign-product{grid-column:1;grid-row:1;width:200px;max-width:58vw;justify-self:center;margin:0;transform:none;opacity:1}.rose-campaign .campaign-product>span{display:none}
 .rose-campaign .campaign-scroll{left:7%;bottom:18px;font-size:8px;letter-spacing:1px}
 .atelier-promise-strip{flex-wrap:wrap;gap:11px 18px;padding:20px 5%;font-size:9px;line-height:1.6;letter-spacing:0}.atelier-promise-strip>span+span:before{display:none}.atelier-promise-strip>span:before{content:'✧';margin-right:7px}
 .template-index .section{padding:48px 5%}.template-index .merch-heading{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:27px}.template-index .merch-heading h2{font-size:36px;max-width:100%;line-height:1.12}.template-index .merch-heading .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:12px}.template-index .merch-heading>.text-link{font-size:11px}
 .signature-intro{font-size:12px;margin-top:16px;line-height:1.8}.signature-intro br{display:none}.brand-signatures .product-grid{gap:27px 13px}.brand-signatures .product-description{padding-top:14px}.brand-signatures .product-description>p{font-size:7px;letter-spacing:.8px;margin-bottom:6px}.brand-signatures .product-description h3{font-size:12px;line-height:1.65;min-height:40px;margin-bottom:6px}.brand-signatures .product-price{font-size:12px}
 .collection-story-grid{grid-template-columns:1fr;gap:36px}.collection-story-lead{grid-column:1/-1;min-height:460px}.collection-story-lead>div{margin-top:65%;padding:65px 25px 25px}.collection-story-lead h3{font-size:40px}.collection-story h3{font-size:26px;line-height:1.1;margin-bottom:14px}.collection-story>div{padding-top:17px}.collection-story .eyebrow{font-size:7px;letter-spacing:1px;line-height:1.6}.collection-story .text-link{font-size:10px;gap:8px}.collection-story-lead>div{padding-top:65px}.collection-story-lead .text-link{font-size:12px}
 .brand-manifesto{grid-template-columns:1fr;min-height:0}.manifesto-image{min-height:300px}.manifesto-image>img{object-position:center}.manifesto-copy{padding:42px 8% 49px}.manifesto-copy h2{font-size:54px}.manifesto-copy>svg{width:28px;height:36px;margin-bottom:20px}.manifesto-copy>.eyebrow{font-size:8px}.manifesto-copy>p:not(.eyebrow){font-size:13px;max-width:100%}
 .atelier-experience{grid-template-columns:minmax(0,1fr);gap:35px}.atelier-experience-photo{min-width:0;min-height:0;width:100%;height:auto;aspect-ratio:1}.atelier-experience-copy{min-width:0}.atelier-experience-photo>span{font-size:7px;left:22px;bottom:22px}.atelier-experience-copy>.eyebrow{font-size:8px}.atelier-experience-copy h2{font-size:39px}.atelier-experience-intro{font-size:13px;line-height:1.9}.atelier-experience-steps>li{gap:18px;padding:21px 0}.atelier-experience-steps h3{font-size:26px}.atelier-experience-steps p{font-size:12px}.atelier-experience-copy>.button{width:100%;justify-content:space-between}
 .client-care-ribbon{flex-direction:column;align-items:stretch;padding:30px 7%;gap:20px}.client-care-ribbon>p{font-size:26px;max-width:260px}.client-care-ribbon>div{display:flex;flex-direction:column;gap:0}.client-care-ribbon a{display:flex;align-items:center;justify-content:space-between;min-height:47px;border-bottom-color:#cdbdad}
 .footer-column>a{font-size:11px}.footer-column>span{font-size:9px}
}

/* One ring-shopping entry, with the complete design directory in its menu. */
.shop-rings-menu{grid-template-columns:minmax(150px,.8fr) minmax(330px,1.7fr) minmax(190px,1fr);gap:35px;padding-inline:max(5%,calc((100vw - 1240px)/2))}
.shop-rings-menu .menu-designs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;align-content:start}
.shop-rings-menu .menu-designs .menu-title{grid-column:1/-1}
.shop-rings-menu .menu-feature{grid-template-columns:90px 1fr;gap:15px}
.shop-rings-menu .menu-feature img{width:90px;height:110px}
.shop-rings-menu .menu-feature>span{font-size:21px}
.shop-rings-disclosure[open]>summary>span{transform:rotate(180deg)}
@media(min-width:761px) and (max-width:1000px){.shop-rings-menu{grid-template-columns:1fr 2fr;gap:25px}.shop-rings-menu .menu-feature{display:none}}
@media(max-width:760px){.shop-rings-menu{grid-template-columns:1fr;padding:20px 0;gap:24px}.shop-rings-menu .menu-collection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.shop-rings-menu .menu-title{grid-column:1/-1;margin-bottom:6px}.shop-rings-menu>div>a{min-height:44px;display:flex;align-items:center;line-height:1.5;width:auto}.shop-rings-menu .menu-designs{column-gap:20px}.shop-rings-menu .menu-feature{display:none}}

/* Published customer support and direct product checkout. */
.footer-contact-details{display:grid;gap:18px;margin:4px 0 20px}
.footer-contact-details a{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.footer-contact-details svg{width:18px;height:18px;flex:none;margin-top:2px}
.footer-contact-details small{display:block;font-size:12px;color:inherit;margin-top:3px}
.product-form .buy-now-button{display:flex;width:100%;justify-content:center;gap:18px;margin-top:12px;min-height:52px}
.product-form:has(.buy-now-button:not([hidden])) .buy-row .button{background:transparent;color:var(--wine);border:1px solid var(--wine)}
