/* Shared policy, contact and cart layouts. */
.brand-page:not(.dos-story-page){width:min(100% - 48px,1060px);margin-inline:auto;text-align:center;padding:clamp(64px,12vw,220px) 0 clamp(64px,9vw,140px)}
.brand-page:not(.dos-story-page) h1{font:750 clamp(26px,3vw,42px)/1.15 'Fraunces',Georgia,serif;margin:0 0 36px}
.brand-page:not(.dos-story-page) .rte{font:650 clamp(17px,2vw,27px)/1.3 'Fraunces',Georgia,serif}
.brand-page:not(.dos-story-page) .rte h2{font-size:clamp(22px,2.7vw,36px);margin:48px 0 14px}
.brand-page:not(.dos-story-page) .rte p{margin:0 0 20px}
.brand-page:not(.dos-story-page) .rte ul{padding-left:24px;text-align:left;margin:12px auto 32px;max-width:900px}
.brand-page:not(.dos-story-page) .rte li{margin:8px 0}
.policy-return-links{display:flex;justify-content:space-between;gap:20px;margin-bottom:48px;font-size:13px;text-align:left}
.policy-return-links a{min-height:44px;display:flex;align-items:center;text-decoration:none}
.service-benefits{border-radius:25px 25px 0 0}
.contact-page{max-width:760px;padding-block:clamp(48px,8vw,100px)}
.contact-page h1{font-size:clamp(28px,4vw,44px)}
.contact-page input,.contact-page textarea{background:white;border:1px solid #aa8f9a;border-radius:10px}
.contact-page button,.template-cart button,.template-cart .button{border-radius:12px}
@media(max-width:767px){
.brand-page:not(.dos-story-page){width:calc(100% - 40px);padding-block:56px 64px}
.brand-page:not(.dos-story-page) .rte{font-size:17px;line-height:1.4}
.brand-page:not(.dos-story-page) .rte h2{font-size:23px;margin-top:36px}
.policy-return-links{margin-bottom:32px}
.service-benefits{padding-block:60px}
.benefits-grid{grid-template-columns:minmax(0,1fr);gap:30px;text-align:center}
.benefits-grid>div>p,.benefits-grid .rte{display:none}
.benefits-grid .icon{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2}
.benefits-grid h2{font-size:14px}
.template-cart .cart-row{grid-template-columns:72px minmax(0,1fr);gap:16px}
.template-cart .cart-row>div:last-child{grid-column:2}
.template-cart .cart-row img{width:72px}
.template-cart .cart-row h2{font-size:18px}
.template-cart .button-row{flex-wrap:wrap}
.template-cart .button-row button{flex:1;min-width:120px}
.contact-page button{width:100%}
}

/* Smaller policy copy with generous, responsive side insets. */
.brand-page.policy-compact{padding-inline:clamp(16px,5vw,80px)}
.brand-page.policy-compact h1{font-size:clamp(24px,2.5vw,34px)}
.brand-page.policy-compact .rte{font-size:clamp(16px,1.5vw,21px);line-height:1.4}
.brand-page.policy-compact .rte h2{font-size:clamp(20px,2vw,28px)}
@media(max-width:767px){.brand-page.policy-compact{padding-inline:12px}.brand-page.policy-compact .rte{font-size:16px}}

/* Compact cart control for interior-page headers. */
body:not(.template-index) .dos-header .header-inner{position:relative;display:flex;align-items:center;justify-content:center;min-height:88px}
body:not(.template-index) .dos-header .bag{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;padding:9px;gap:0;border:0;border-radius:11px;background:#48172d;color:#f3ece7;line-height:1}
body:not(.template-index) .dos-header .bag>span:not(.visually-hidden){display:none}
body:not(.template-index) .dos-header .bag .icon{display:block;width:25px;height:25px;max-width:none}
@media(max-width:767px){body:not(.template-index) .dos-header .header-inner{min-height:76px}}

/* Size guide uses actual measuring guidance until approved chart data is supplied. */
.brand-page.size-guide-page{width:min(100% - 40px,860px);padding:clamp(40px,6vw,88px) clamp(0px,3vw,40px) 64px}
.size-guide-page .rte{font-size:clamp(16px,1.5vw,19px);line-height:1.5}
.size-guide-page .size-guide-intro{max-width:580px;margin:0 auto 32px}
.size-guide-card{background:white;border:1px solid #48172d25;border-radius:20px;padding:clamp(24px,4vw,40px);text-align:left}
.size-guide-page .rte .size-guide-card h2,.size-guide-page .rte .size-guide-help h2{font-size:clamp(20px,2vw,25px);margin:0 0 16px}
.size-guide-card dl{margin:24px 0 0}
.size-guide-card dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;padding:18px 0;border-top:1px solid #48172d20}
.size-guide-card dt{font-weight:750;font-size:15px}
.size-guide-card dd{margin:0;font-size:16px}
.size-guide-help{margin-top:36px;padding:0 16px}
.size-guide-help .button{border-radius:10px;font-size:13px;padding:12px 26px}
@media(max-width:480px){.size-guide-card dl>div{grid-template-columns:1fr;gap:6px}.size-guide-card dd{font-size:15px}.size-guide-help{padding:0}.size-guide-page .policy-return-links{font-size:12px}}

/* Center the Size Guide introduction explicitly. */
.brand-page.size-guide-page .rte .size-guide-intro{text-align:center;margin-inline:auto}

