:root{--ivory:#fffaf0;--paper:#f7edda;--indigo:#172c5b;--red:#a72d2d;--marigold:#e9a51a;--ink:#251b18;--muted:#75685e;--line:#ddcdb6;--white:#fffdf8;--green:#2f6b46}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:"Source Sans 3", sans-serif;font-size:16px;line-height:1.5}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:radial-gradient(#8c6f4b .55px,transparent .55px);background-size:5px 5px;z-index:20;mix-blend-mode:multiply}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{color:inherit}
img{display:block;max-width:100%}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-shell{min-height:100vh;overflow:hidden}.print-strip{height:10px;background:repeating-linear-gradient(90deg,var(--red) 0 24px,var(--marigold) 24px 48px,var(--indigo) 48px 72px,var(--paper) 72px 84px)}
.utility-bar{height:34px;background:var(--indigo);color:#fff;display:flex;justify-content:center;gap:64px;align-items:center;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.site-header{height:102px;display:grid;grid-template-columns:120px minmax(430px,1fr) minmax(240px,330px) auto;gap:28px;align-items:center;padding:0 clamp(24px,5vw,80px);background:rgba(255,250,240,.97);border-bottom:1px solid var(--line);position:relative;z-index:10}
.brand-logo img{height:82px;width:100px;object-fit:contain}.main-nav{display:flex;align-items:center;gap:clamp(18px,2.1vw,34px)}.main-nav a{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;position:relative}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:3px;background:var(--red);transition:right .2s}.main-nav a:hover:after,.main-nav a:focus-visible:after{right:0}
.search{height:44px;border:1px solid var(--indigo);display:flex;background:var(--white)}.search input{border:0;background:transparent;min-width:0;width:100%;padding:0 14px;color:var(--ink);outline:none}.search:focus-within{box-shadow:0 0 0 3px rgba(233,165,26,.45)}.search button{width:46px;border:0;background:var(--indigo);color:#fff;font-size:23px;cursor:pointer}.header-actions{display:flex;gap:18px;align-items:center;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.cart-link{position:relative}.cart-link b{display:inline-grid;place-items:center;background:var(--red);color:#fff;border-radius:999px;width:19px;height:19px;font-size:10px;margin-left:3px}.mobile-menu{display:none}
.hero{min-height:540px;display:grid;grid-template-columns:56% 44%;background:var(--paper);overflow:hidden}.hero-copy{padding:64px clamp(36px,7vw,120px);background-image:radial-gradient(rgba(167,45,45,.12) 2px,transparent 2px);background-size:35px 35px}.eyebrow{color:var(--red);font-size:12px;line-height:1.2;font-weight:800;text-transform:uppercase;letter-spacing:.2em;margin:0 0 16px}.eyebrow span{color:var(--marigold)}.hero h1,.category-hero h1,.product-summary h1,.page-title h1,.checkout-panel h1,.account-story h1{font-family:Georgia,"Times New Roman",serif;color:var(--indigo);font-size:clamp(48px,5vw,78px);line-height:.94;letter-spacing:-.045em;margin:0}.hero h1 span{display:block}.hero h1 br+*{color:var(--red)}.hero-copy>p:not(.eyebrow){font-family:Georgia,serif;font-size:21px;line-height:1.45;max-width:610px;color:#645246;margin:28px 0}.hero-actions{display:flex;align-items:center;gap:38px;margin-top:32px}.button{min-height:52px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:34px;padding:0 26px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .15s,box-shadow .15s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--red);color:#fff}.button.offset{box-shadow:9px 9px 0 var(--marigold)}.button-light{background:var(--ivory);color:var(--red)}.button-block{width:100%}.text-link{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--red);border-bottom:2px solid currentColor;padding-bottom:5px}.hero-image{position:relative;background:var(--indigo);min-height:540px}.hero-image>img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.05)}.zigzag{position:absolute;left:-1px;top:0;bottom:0;width:65px;background:var(--paper);clip-path:polygon(0 0,100% 0,18% 8%,100% 16%,18% 24%,100% 32%,18% 40%,100% 48%,18% 56%,100% 64%,18% 72%,100% 80%,18% 88%,100% 96%,0 100%)}.heritage-stamp{position:absolute;right:48px;bottom:30px;width:145px;height:145px;border-radius:50%;background:var(--marigold);color:var(--indigo);border:4px solid var(--red);box-shadow:inset 0 0 0 4px var(--marigold),inset 0 0 0 7px var(--indigo);display:grid;place-content:center;text-align:center;transform:rotate(-7deg);font-family:Georgia,serif}.heritage-stamp strong{font-size:34px;line-height:1}.heritage-stamp span{font-size:14px;font-weight:700;text-transform:uppercase;line-height:1.05}
.section{padding:72px clamp(24px,5vw,80px)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.section h2,.legacy-band h2,.product-story h2,.checkout-summary h2,.order-summary h2,.account-card h2{font-family:Georgia,serif;color:var(--indigo);font-size:clamp(32px,3vw,48px);line-height:1.05;margin:0}.category-section{background:var(--ivory)}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.category-card{height:150px;position:relative;overflow:hidden;border-radius:4px;background:var(--indigo)}.category-card:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(23,44,91,.92))}.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.category-card:hover img{transform:scale(1.05)}.category-card span{position:absolute;z-index:2;left:22px;bottom:16px;color:#fff;font:700 24px Georgia,serif;text-decoration:underline;text-underline-offset:4px}.category-card b{font-family:"Source Sans 3", sans-serif}.patterned{background-color:var(--white);background-image:linear-gradient(45deg,rgba(233,165,26,.08) 25%,transparent 25%),linear-gradient(-45deg,rgba(167,45,45,.07) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(23,44,91,.06) 75%),linear-gradient(-45deg,transparent 75%,rgba(233,165,26,.07) 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.product-card{background:var(--ivory);border:1px solid var(--line);position:relative;min-width:0;transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-5px);box-shadow:0 14px 30px rgba(37,27,24,.1)}.product-stripe{height:8px;background:repeating-linear-gradient(90deg,var(--red) 0 20px,var(--marigold) 20px 40px,var(--indigo) 40px 60px)}.wish{position:absolute;right:16px;top:24px;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--ivory);font-size:22px;z-index:2;cursor:pointer}.product-image{height:260px;display:flex;align-items:center;justify-content:center;background:#f4e8d3;padding:18px}.product-image img{max-height:230px;max-width:90%;object-fit:contain}.product-info{padding:24px}.product-badge{color:var(--red);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;margin:0 0 9px}.product-card h3{font:700 28px/1.05 Georgia,serif;color:var(--indigo);margin:0}.product-card h3 a:hover{text-decoration:underline}.rating{color:var(--muted);font-size:13px}.rating span{color:var(--marigold);letter-spacing:1px}.product-buy{display:flex;justify-content:space-between;align-items:end}.product-buy p{margin:0}.product-buy strong{display:block;font:700 25px Georgia,serif;color:var(--red)}.product-buy small{color:var(--muted)}.add-button{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--indigo);color:#fff;font-size:26px;transition:background .2s}.add-button:hover{background:var(--red)}
.legacy-band{display:grid;grid-template-columns:1fr 1fr;background:var(--indigo);color:#fff}.legacy-photo{min-height:470px}.legacy-photo img{width:100%;height:100%;object-fit:cover}.legacy-copy{padding:70px clamp(40px,7vw,110px);align-self:center}.legacy-copy .eyebrow{color:var(--marigold)}.legacy-copy h2{color:#fff}.legacy-copy>p:not(.eyebrow){font-family:Georgia,serif;font-size:19px;color:#dfd8ce;margin:24px 0 30px;max-width:560px}.trust-bar{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--ivory);padding:28px clamp(24px,5vw,80px)}.trust-bar>div{display:flex;gap:14px;align-items:center;padding:0 24px;border-right:1px solid var(--line)}.trust-bar>div:last-child{border:0}.trust-bar b{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--paper);color:var(--red);font-size:20px}.trust-bar strong,.trust-bar small{display:block}.trust-bar strong{font-size:13px;text-transform:uppercase;letter-spacing:.05em}.trust-bar small{font-size:12px;color:var(--muted)}
.site-footer{background:var(--ink);color:#f8eedf;display:grid;grid-template-columns:1.4fr .7fr .7fr 1.2fr;gap:50px;padding:64px clamp(24px,5vw,80px) 30px}.footer-brand img{width:95px;height:80px;object-fit:contain;background:var(--ivory);padding:4px}.footer-brand p{max-width:300px;color:#cfc2b4}.site-footer h3{font:700 18px Georgia,serif;color:var(--marigold);margin:0 0 15px}.site-footer>div:not(.footer-brand){display:flex;flex-direction:column;gap:9px}.site-footer a{color:#e4d9cc;font-size:14px}.newsletter p{color:#cfc2b4;font-size:14px;margin:0}.newsletter form{display:flex;height:45px;margin-top:8px}.newsletter input{width:100%;min-width:0;border:1px solid #76675d;background:transparent;padding:0 12px;color:#fff}.newsletter button{width:48px;border:0;background:var(--red);color:#fff}.copyright{grid-column:1/-1;margin:30px 0 0;padding-top:22px;border-top:1px solid #51433a;font-size:12px;color:#a99a8e}
.page-main{background:var(--ivory)}.breadcrumbs{padding:20px clamp(24px,5vw,80px);font-size:12px;color:var(--muted);border-bottom:1px solid var(--line)}.breadcrumbs a{color:var(--red);font-weight:700}.breadcrumbs span{margin-left:8px}.category-hero{height:330px;display:grid;grid-template-columns:55% 45%;background:var(--indigo);color:#fff;overflow:hidden}.category-hero>div{padding:60px clamp(24px,7vw,110px)}.category-hero .eyebrow{color:var(--marigold)}.category-hero h1{color:#fff;font-size:70px}.category-hero p:last-child{max-width:600px;color:#ddd9d1;font-family:Georgia,serif;font-size:18px}.category-hero img{width:100%;height:100%;object-fit:cover}.catalog-layout{display:grid;grid-template-columns:260px 1fr;gap:42px;padding:55px clamp(24px,5vw,80px) 80px}.filters{border-top:8px solid var(--indigo)}.filter-heading{display:flex;justify-content:space-between;align-items:center;padding:18px 0}.filter-heading h2{font:700 30px Georgia,serif;margin:0;color:var(--indigo)}.filter-heading button,.remove{border:0;background:none;color:var(--red);text-decoration:underline;cursor:pointer;font-size:12px}.filters details{border-top:1px solid var(--line);padding:18px 0}.filters summary{font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:12px;cursor:pointer;margin-bottom:12px}.filters label{display:flex;align-items:center;gap:9px;margin:10px 0;font-size:14px}.filters label span{margin-left:auto;color:var(--muted)}.filters input[type=checkbox]{accent-color:var(--red)}.chips{display:flex;flex-wrap:wrap;gap:7px}.chips button,.weight-options button{border:1px solid var(--line);background:var(--ivory);padding:8px 11px;cursor:pointer}.chips button:hover,.weight-options button.selected{background:var(--indigo);color:#fff;border-color:var(--indigo)}.catalog-toolbar{height:56px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin-bottom:24px;font-size:13px}.catalog-toolbar select{border:1px solid var(--line);background:var(--white);padding:8px}.catalog-grid{grid-template-columns:repeat(3,1fr)}.catalog-grid .product-image{height:210px}.catalog-grid .product-card h3{font-size:23px}
.product-detail{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(42px,6vw,100px);padding:48px clamp(24px,7vw,110px) 70px}.product-art{height:580px;display:grid;place-items:center;border:1px solid var(--line)}.product-art img{max-height:510px;max-width:88%;object-fit:contain}.thumbs{display:flex;gap:12px;margin-top:14px}.thumbs button{width:76px;height:76px;border:1px solid var(--line);background:var(--white);padding:6px}.thumbs button.active{border:3px solid var(--red)}.thumbs img{width:100%;height:100%;object-fit:contain}.product-summary{padding-top:22px}.product-summary h1{font-size:64px}.product-summary .rating a{text-decoration:underline}.product-lead{font:18px/1.55 Georgia,serif;color:#66574d;max-width:620px}.purchase-box{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}.price-row{display:flex;align-items:center;gap:18px}.price-row>strong{font:700 36px Georgia,serif;color:var(--red)}.price-row>span{color:var(--muted);font-size:12px}.price-row>b{margin-left:auto;color:var(--green);font-size:12px;text-transform:uppercase}.purchase-box fieldset{border:0;padding:20px 0;margin:0}.purchase-box legend{font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.weight-options{display:flex;gap:8px}.purchase-actions{display:flex;gap:12px;align-items:center}.quantity{height:52px;display:flex;align-items:center;border:1px solid var(--line);background:var(--white)}.quantity button{width:38px;height:100%;border:0;background:transparent;cursor:pointer;font-size:20px}.quantity span{min-width:28px;text-align:center;font-weight:700}.wish-large{width:52px;height:52px;border:1px solid var(--line);background:var(--ivory);font-size:22px}.delivery-check{padding:20px 0;border-bottom:1px solid var(--line)}.delivery-check>strong{display:block;margin-bottom:7px}.delivery-check form{display:flex;height:42px;max-width:350px}.delivery-check input{width:100%;min-width:0;border:1px solid var(--line);padding:0 12px}.delivery-check button{border:0;background:var(--indigo);color:#fff;padding:0 18px}.delivery-check small{display:block;color:var(--muted);margin-top:7px}.summary-promises{display:flex;flex-wrap:wrap;gap:18px;padding-top:18px;color:var(--green);font-size:12px;font-weight:700}.product-story{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:var(--indigo);color:#fff;padding:75px clamp(24px,7vw,110px)}.product-story h2{color:#fff}.product-story>div>p{font-family:Georgia,serif;font-size:18px;color:#dfd7ce}.product-story dl{margin:28px 0 0}.product-story dl div{display:flex;justify-content:space-between;border-top:1px solid #50618a;padding:12px 0}.product-story dt{color:#c6bbae}.product-story dd{margin:0}.related{padding-bottom:90px}
.page-title{padding:50px clamp(24px,7vw,110px) 28px}.page-title h1{font-size:64px}.page-title h1 span{font:14px "Source Sans 3", sans-serif;color:var(--muted);letter-spacing:0;margin-left:12px}.cart-layout{display:grid;grid-template-columns:1fr 390px;gap:60px;padding:0 clamp(24px,7vw,110px) 80px}.cart-items{border-top:8px solid var(--indigo)}.cart-row{display:grid;grid-template-columns:150px 1fr auto 80px;gap:24px;align-items:center;border-bottom:1px solid var(--line);padding:24px 0}.cart-image{height:150px;background:var(--paper);display:grid;place-items:center}.cart-image img{max-width:120px;max-height:130px}.cart-description h2{font:700 26px Georgia,serif;color:var(--indigo);margin:0}.cart-description>p:not(.product-badge){color:var(--muted);margin:6px 0}.line-price{font:700 24px Georgia,serif;color:var(--red);text-align:right}.cart-items>.text-link{display:inline-block;margin-top:30px}.order-summary{background:var(--paper);padding:32px;align-self:start;border-top:8px solid var(--red);position:sticky;top:20px}.order-summary h2{font-size:34px}.order-summary dl,.checkout-summary dl{margin:26px 0}.order-summary dl div,.checkout-summary dl div{display:flex;justify-content:space-between;padding:10px 0}.free{color:var(--green);font-weight:700}.order-summary .total,.checkout-summary .total{border-top:2px solid var(--ink);margin-top:8px;padding-top:16px;font-size:22px;font-weight:800}.coupon{border-top:1px solid var(--line);padding:18px 0}.coupon label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.coupon>div{height:42px;display:flex;margin-top:8px}.coupon input{width:100%;min-width:0;border:1px solid var(--line);padding:0 10px}.coupon button{border:0;background:var(--indigo);color:#fff;padding:0 14px}.secure-note{text-align:center;color:var(--muted);font-size:11px}
.checkout-shell{min-height:100vh;background:var(--paper)}.checkout-header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,100px);background:var(--ivory);border-bottom:1px solid var(--line)}.checkout-header img{height:86px;width:100px;object-fit:contain}.checkout-header p{text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.08em}.checkout-header p span{color:var(--green)}.checkout-header>a:last-child{font-size:12px;color:var(--red);text-decoration:underline}.checkout-main{display:grid;grid-template-columns:minmax(0,760px) 390px;gap:70px;justify-content:center;padding:46px 28px 80px}.checkout-steps{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);margin-bottom:38px}.checkout-steps button{border:0;background:transparent;padding:0 0 15px;color:var(--muted);text-align:left;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;border-bottom:4px solid transparent}.checkout-steps button span{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid currentColor;border-radius:50%;margin-right:9px}.checkout-steps button.active{color:var(--red);border-bottom-color:var(--red)}.checkout-steps button.complete{color:var(--green)}.checkout-panel{background:var(--ivory);padding:42px;border:1px solid var(--line)}.checkout-panel h1{font-size:48px;margin-bottom:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label,.account-form>label,.two-fields label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.form-grid input,.form-grid select,.account-form input{display:block;width:100%;height:46px;border:1px solid var(--line);background:var(--white);margin-top:7px;padding:0 12px;text-transform:none;letter-spacing:0}.form-grid input:focus,.form-grid select:focus,.account-form input:focus{outline:3px solid rgba(233,165,26,.45);border-color:var(--indigo)}.wide{grid-column:1/-1}.delivery-option{display:flex;align-items:center;gap:14px;border:2px solid var(--indigo);background:var(--white);padding:16px}.delivery-option span{color:var(--red)}.delivery-option strong,.delivery-option small{display:block}.delivery-option small{color:var(--muted);font-weight:400}.delivery-option b{margin-left:auto;color:var(--green)}.payment-list{display:grid;gap:12px;margin-bottom:30px}.payment-list label{display:flex;align-items:center;gap:16px;border:1px solid var(--line);background:var(--white);padding:18px;cursor:pointer}.payment-list input{accent-color:var(--red)}.payment-list strong,.payment-list small{display:block}.payment-list small{color:var(--muted)}.review-address{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:18px 0}.review-address p{color:var(--muted)}.review-address button{border:0;background:none;color:var(--red);text-decoration:underline;align-self:start}.terms{display:block;text-align:center;color:var(--muted);margin-top:14px}.checkout-summary{background:var(--ivory);border-top:8px solid var(--indigo);padding:30px;align-self:start;position:sticky;top:20px}.checkout-summary h2{font-size:32px}.mini-product{display:grid;grid-template-columns:70px 1fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:15px 0}.mini-product img{width:70px;height:70px;object-fit:contain;background:var(--paper)}.mini-product strong,.mini-product small{display:block}.mini-product small{color:var(--muted)}.summary-note{background:var(--paper);border-left:4px solid var(--marigold);padding:12px;font-size:12px}.checkout-footer{text-align:center;background:var(--indigo);color:#fff;padding:18px;font-size:12px;letter-spacing:.04em}
.account-layout{display:grid;grid-template-columns:1fr 1fr;min-height:700px}.account-story{background:var(--indigo);color:#fff;padding:70px clamp(32px,7vw,110px);position:relative;overflow:hidden}.account-story:after{content:"";position:absolute;inset:0;opacity:.17;background-image:repeating-linear-gradient(45deg,transparent 0 32px,var(--marigold) 32px 35px),repeating-linear-gradient(-45deg,transparent 0 32px,var(--red) 32px 35px)}.account-story>*{position:relative;z-index:1}.account-story .eyebrow{color:var(--marigold)}.account-story h1{color:#fff;font-size:64px}.account-story>p:not(.eyebrow){font:18px Georgia,serif;color:#e5ded2;max-width:500px}.account-perks{display:flex;flex-wrap:wrap;gap:18px;color:var(--marigold);font-size:12px;font-weight:700;text-transform:uppercase;margin:26px 0}.account-story>img{width:100%;max-width:540px;height:210px;object-fit:cover;border:8px solid var(--ivory);margin-top:20px}.account-card{padding:70px clamp(32px,8vw,130px);background:var(--paper)}.account-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.account-tabs button{border:0;background:transparent;padding:14px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;border-bottom:4px solid transparent}.account-tabs button.active{color:var(--red);border-bottom-color:var(--red)}.account-form{background:var(--ivory);border:1px solid var(--line);padding:36px;margin-top:24px}.account-form h2{font-size:36px;margin-bottom:24px}.account-form>label{display:block;margin:16px 0}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-between{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin:15px 0}.form-between label{display:flex;gap:6px;align-items:center}.form-between button{border:0;background:none;color:var(--red);text-decoration:underline}.form-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;margin:22px 0}.form-divider:before,.form-divider:after{content:"";height:1px;background:var(--line);flex:1}.social-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.social-buttons button{height:44px;background:var(--white);border:1px solid var(--line);font-weight:700}.check-label{display:flex!important;gap:8px;align-items:center;text-transform:none!important;letter-spacing:0!important;font-weight:400!important}.check-label input{width:auto;height:auto;margin:0}.account-form>small{display:block;color:var(--muted);text-align:center;margin-top:12px}
@media(max-width:1180px){.site-header{grid-template-columns:105px 1fr minmax(210px,280px) auto}.main-nav{gap:13px}.main-nav a{font-size:11px}.catalog-grid{grid-template-columns:repeat(2,1fr)}.checkout-main{grid-template-columns:minmax(0,700px) 340px;gap:32px}.product-detail{gap:40px}.account-card{padding-inline:45px}}
@media(max-width:900px){.utility-bar{justify-content:space-between;padding:0 22px;gap:10px}.utility-bar span:nth-child(2){display:none}.site-header{height:88px;grid-template-columns:42px 82px 1fr auto;padding:0 20px;gap:13px}.mobile-menu{display:block}.mobile-menu summary{list-style:none;font-size:24px;cursor:pointer}.mobile-menu nav{position:absolute;top:88px;left:0;right:0;background:var(--ivory);border-bottom:3px solid var(--indigo);display:flex;flex-direction:column;padding:20px 30px;gap:12px}.brand-logo img{height:72px;width:80px}.main-nav{display:none}.header-actions>a:first-child{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:58px 28px}.hero-image{min-height:390px}.category-grid{grid-template-columns:repeat(5,230px);overflow-x:auto;padding-bottom:8px}.product-grid{grid-template-columns:repeat(2,1fr)}.product-grid .product-card:last-child{display:none}.legacy-band{grid-template-columns:1fr}.legacy-photo{min-height:360px}.trust-bar{grid-template-columns:repeat(2,1fr);gap:20px}.trust-bar>div{border-right:0}.site-footer{grid-template-columns:1fr 1fr}.footer-brand,.newsletter,.copyright{grid-column:1/-1}.catalog-layout{grid-template-columns:1fr}.filters{display:none}.product-detail{grid-template-columns:1fr}.product-art{height:480px}.product-story{grid-template-columns:1fr;gap:20px}.cart-layout{grid-template-columns:1fr}.order-summary{position:static}.checkout-main{grid-template-columns:1fr;max-width:800px;margin:auto}.checkout-summary{position:static;order:-1}.account-layout{grid-template-columns:1fr}.account-story{min-height:580px}}
@media(max-width:620px){.utility-bar{font-size:10px}.site-header{grid-template-columns:36px 65px 1fr auto;gap:8px}.brand-logo img{width:65px}.search{height:40px}.search input{padding:0 8px;font-size:13px}.header-actions{font-size:0}.cart-link b{font-size:10px}.hero{min-height:auto}.hero h1{font-size:48px}.hero-copy>p:not(.eyebrow){font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-image{min-height:300px}.heritage-stamp{width:105px;height:105px;right:16px}.section{padding:50px 20px}.section-heading{align-items:flex-start;gap:12px}.section-heading .text-link{display:none}.product-grid{grid-template-columns:1fr}.product-grid .product-card:last-child{display:block}.category-card{height:130px}.legacy-copy{padding:50px 24px}.trust-bar{grid-template-columns:1fr;padding:26px 20px}.site-footer{grid-template-columns:1fr;padding:50px 24px 24px}.site-footer>div:not(.footer-brand){grid-column:1/-1}.category-hero{height:auto;grid-template-columns:1fr}.category-hero>div{padding:45px 24px}.category-hero h1{font-size:50px}.category-hero img{height:230px}.catalog-layout{padding-inline:20px}.catalog-grid{grid-template-columns:1fr}.product-detail{padding:35px 20px}.product-art{height:370px}.product-summary h1{font-size:48px}.purchase-actions{flex-wrap:wrap}.purchase-actions .button{flex:1}.product-story{padding:50px 24px}.page-title{padding-inline:20px}.page-title h1{font-size:50px}.cart-layout{padding:0 20px 60px}.cart-row{grid-template-columns:92px 1fr auto;gap:14px}.cart-image{height:100px}.cart-description h2{font-size:21px}.cart-row .quantity{grid-column:2}.line-price{grid-row:1;grid-column:3}.order-summary{padding:25px}.checkout-header{padding:0 18px}.checkout-header p{display:none}.checkout-main{padding:30px 16px 60px}.checkout-panel{padding:25px 20px}.checkout-panel h1{font-size:38px}.checkout-steps button{font-size:0}.checkout-steps button span{font-size:12px}.form-grid{grid-template-columns:1fr}.wide{grid-column:1}.checkout-summary{padding:24px 20px}.account-story,.account-card{padding:50px 20px}.account-story h1{font-size:48px}.account-form{padding:25px 20px}.two-fields{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Magento 2 native-block integration. These rules deliberately style rather
   than replace catalogue, customer, cart and checkout functionality. */
.bhikharam-blockprint .page-wrapper{background:var(--ivory);color:var(--ink)}
.bhikharam-blockprint .page-header{background:rgba(255,250,240,.98);border:0;border-bottom:1px solid var(--line);margin:0}
.bhikharam-blockprint .header.content{min-height:102px;display:flex;align-items:center;gap:28px;padding:10px clamp(24px,5vw,80px)}
.bhikharam-blockprint .logo{margin:0 auto 0 0;max-width:120px}
.bhikharam-blockprint .logo img{max-height:94px;width:auto}
.bhikharam-blockprint .block-search{margin:0;max-width:350px}
.bhikharam-blockprint .block-search input{height:44px;border:1px solid var(--indigo);background:var(--white)}
.bhikharam-blockprint .minicart-wrapper .action.showcart:before{color:var(--indigo)}
.bhikharam-blockprint .nav-sections{background:var(--ivory);margin:0;border-bottom:1px solid var(--line)}
.bhikharam-blockprint .navigation{background:transparent;text-transform:uppercase;letter-spacing:.08em;font-size:13px}
.bhikharam-blockprint .navigation .level0>.level-top{color:var(--ink);font-weight:800}
.bhikharam-blockprint .navigation .level0.active>.level-top,.bhikharam-blockprint .navigation .level0.has-active>.level-top{border-color:var(--red);color:var(--red)}
.bhikharam-blockprint .breadcrumbs,.bhikharam-blockprint .page-main{max-width:none;padding-left:clamp(24px,5vw,80px);padding-right:clamp(24px,5vw,80px)}
.bhikharam-home .page-main{padding:0}.bhikharam-home .columns,.bhikharam-home .column.main{display:block;padding:0}.bhikharam-home .page-title-wrapper{display:none}
.bhikharam-blockprint .page-title{font-family:Georgia,"Times New Roman",serif;color:var(--indigo);font-size:clamp(42px,5vw,68px);line-height:1}
.bhikharam-blockprint .action.primary{border:0;border-radius:0;background:var(--red);color:#fff;text-transform:uppercase;letter-spacing:.07em;font-weight:800;padding:15px 24px}
.bhikharam-blockprint .action.primary:hover,.bhikharam-blockprint .action.primary:focus{background:var(--indigo)}
.bhikharam-blockprint input[type=text],.bhikharam-blockprint input[type=email],.bhikharam-blockprint input[type=password],.bhikharam-blockprint input[type=tel],.bhikharam-blockprint select{border:1px solid var(--line);border-radius:0;background:var(--white);min-height:44px}
.bhikharam-blockprint input:focus,.bhikharam-blockprint select:focus{box-shadow:0 0 0 3px rgba(233,165,26,.35);border-color:var(--indigo)}
.bhikharam-category .category-view{background:var(--indigo);color:#fff;margin:0 calc(-1 * clamp(24px,5vw,80px)) 42px;padding:45px clamp(24px,7vw,110px)}
.bhikharam-category .category-title .page-title{color:#fff}.bhikharam-category .category-description{font:18px Georgia,serif;color:#ddd9d1}
.bhikharam-blockprint .products-grid .product-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:0}
.bhikharam-blockprint .products-grid .product-item{width:auto!important;margin:0!important;background:var(--ivory);border:1px solid var(--line);padding:0 0 22px;transition:transform .2s,box-shadow .2s}
.bhikharam-blockprint .products-grid .product-item:before{content:"";display:block;height:8px;background:repeating-linear-gradient(90deg,var(--red) 0 20px,var(--marigold) 20px 40px,var(--indigo) 40px 60px)}
.bhikharam-blockprint .products-grid .product-item:hover{transform:translateY(-5px);box-shadow:0 14px 30px rgba(37,27,24,.1)}
.bhikharam-blockprint .product-item-photo{display:block;background:#f4e8d3;padding:18px;text-align:center}
.bhikharam-blockprint .product-item-details{padding:20px 24px 0}
.bhikharam-blockprint .product-item-name{font:700 25px Georgia,serif}.bhikharam-blockprint .product-item-name a{color:var(--indigo)}
.bhikharam-blockprint .price-box .price{font:700 25px Georgia,serif;color:var(--red)}
.bhikharam-blockprint .product-reviews-summary .reviews-actions a{color:var(--red)}
.bhikharam-blockprint .toolbar-products{border-bottom:1px solid var(--line);padding-bottom:16px}.bhikharam-blockprint .filter-title strong{background:var(--indigo)}
.bhikharam-product .product-info-main .page-title-wrapper .page-title{font-size:clamp(46px,5vw,68px)}
.bhikharam-product .product.media{background:var(--paper);padding:24px}.bhikharam-product .product-info-main{padding-top:20px}
.bhikharam-product .product-add-form{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}
.bhikharam-product .box-tocart .action.tocart{min-height:52px}.bhikharam-product .product.data.items>.item.title>.switch{font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.bhikharam-cart .cart-container .form-cart,.bhikharam-cart .cart-summary{border-top:8px solid var(--indigo)}
.bhikharam-cart .cart-summary{background:var(--paper);padding:28px}.bhikharam-cart .cart.table-wrapper .product-item-name{font:700 24px Georgia,serif;color:var(--indigo)}
.checkout-index-index .page-header{min-height:92px}.checkout-index-index .opc-wrapper .step-title,.checkout-index-index .opc-block-summary>.title{font:700 34px Georgia,serif;color:var(--indigo)}
.checkout-index-index .opc-block-summary{background:var(--paper);border-top:8px solid var(--indigo)}.checkout-index-index .checkout-payment-method .payment-method-title{border-color:var(--line)}
.account .sidebar-main .block,.account .sidebar-additional .block,.customer-account-login .login-container .block,.customer-account-create .form-create-account{background:var(--paper);border-top:8px solid var(--indigo);padding:28px}
.bhikharam-blockprint .page-footer{background:var(--ink);color:#f8eedf}.bhikharam-blockprint .footer.content{border:0}.bhikharam-blockprint .footer.content a{color:#e4d9cc}.bhikharam-blockprint .footer.content .links strong{color:var(--marigold)}
@media(max-width:900px){.bhikharam-blockprint .products-grid .product-items{grid-template-columns:repeat(2,minmax(0,1fr))}.bhikharam-blockprint .header.content{min-height:88px}.bhikharam-blockprint .utility-bar{padding-inline:16px;gap:16px}}
@media(max-width:620px){.bhikharam-blockprint .products-grid .product-items{grid-template-columns:1fr}.bhikharam-blockprint .breadcrumbs,.bhikharam-blockprint .page-main{padding-left:18px;padding-right:18px}.bhikharam-home .page-main{padding:0}.bhikharam-blockprint .utility-bar a:first-of-type{display:none}}

/* Bhikharam theme completion layer.
   Maps Magento's native storefront structure to the approved prototype while
   preserving Magento catalogue, cart, checkout and customer functionality. */

/* Global shell and header */
.bhikharam-blockprint .page-wrapper{overflow:hidden}
.bhikharam-blockprint .panel.wrapper{background:var(--ivory);border:0;color:var(--ink)}
.bhikharam-blockprint .header.panel{padding:7px clamp(24px,5vw,80px);font-size:12px}
.bhikharam-blockprint .header.links{display:flex;align-items:center;gap:18px}
.bhikharam-blockprint .header.links>li{margin:0}
.bhikharam-blockprint .header.content{display:grid;grid-template-columns:120px minmax(0,1fr) 330px 46px;min-height:102px;padding:10px clamp(24px,5vw,80px)}
.bhikharam-blockprint .logo{grid-column:1;max-width:100px}
.bhikharam-blockprint .block-search{grid-column:3;max-width:none;width:100%}
.bhikharam-blockprint .block-search .control{padding:0}
.bhikharam-blockprint .block-search .action.search{height:44px;width:46px;background:var(--indigo);opacity:1}
.bhikharam-blockprint .block-search .action.search:before{color:#fff}
.bhikharam-blockprint .minicart-wrapper{grid-column:4;margin:0;justify-self:end}
.bhikharam-blockprint .nav-sections{border-top:1px solid var(--line)}
.bhikharam-blockprint .navigation{max-width:none;padding:0 clamp(24px,5vw,80px)}
.bhikharam-blockprint .navigation .level0>.level-top{padding:0 18px}
.utility-bar__phone{align-items:center;display:inline-flex;gap:7px}
.utility-bar__phone svg{fill:currentColor;height:15px;width:15px}

/* Homepage parity */
.bhikharam-home .page-main,.bhikharam-home .columns,.bhikharam-home .column.main{margin:0;max-width:none;width:100%}
.bhikharam-home .column.main{min-height:0}
.products-section .product-description{color:var(--muted);min-height:48px;margin:10px 0}
.products-section .wish{display:grid;place-items:center;text-decoration:none}

/* Category: prototype hero, filter rail, toolbar and cards */
.bhikharam-category .page-main{padding-left:0;padding-right:0}
.bhikharam-category .columns{box-sizing:border-box;display:block;padding:0 clamp(24px,5vw,80px) 80px}
.bhikharam-category .category-hero{margin:0 0 54px}
.bhikharam-category .category-products{padding:0 clamp(24px,5vw,80px) 80px}
.bhikharam-category.page-layout-2columns-left .sidebar-main{width:260px;padding-right:38px}
.bhikharam-category.page-layout-2columns-left .column.main{width:calc(100% - 260px)}
.bhikharam-category .filter.block{border-top:8px solid var(--indigo);margin:0}
.bhikharam-category .filter-title{border-bottom:1px solid var(--line);padding:18px 0}
.bhikharam-category .filter-title strong{background:none;color:var(--indigo);font:700 28px Georgia,serif;padding:0;position:static}
.bhikharam-category .filter-options-item{border-color:var(--line);padding:16px 0}
.bhikharam-category .filter-options-title{color:var(--ink);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.bhikharam-category .toolbar-products{min-height:58px;margin:0 0 24px;padding:10px 0;border-top:0}
.bhikharam-category .toolbar-amount{line-height:36px}
.bhikharam-category .modes-mode{border-color:var(--line);border-radius:0}
.bhikharam-category .sorter-options,.bhikharam-category .limiter-options{background:var(--white);border-color:var(--line)}
.bhikharam-category .products-grid .product-item-info{display:flex;flex-direction:column;width:100%;height:100%}
.bhikharam-category .products-grid .product-item-photo{min-height:235px;display:flex;align-items:center;justify-content:center}
.bhikharam-category .products-grid .product-image-container{width:100%!important}
.bhikharam-category .products-grid .product-image-wrapper{padding-bottom:88%!important}
.bhikharam-category .products-grid .product-item-details{display:flex;flex-direction:column;flex:1;width:100%;padding:22px}
.bhikharam-category .products-grid .product-item-name{margin:0 0 9px;line-height:1.1}
.bhikharam-category .products-grid .product-item-name a{word-break:normal;overflow-wrap:normal;hyphens:none}
.bhikharam-category .products-grid .product-item-actions{margin-top:auto}
.bhikharam-category .products-grid .action.tocart{min-height:44px}

/* Product: prototype proportions, purchase panel and story */
.bhikharam-product .page-main{padding-bottom:0}
.bhikharam-product .page-title-wrapper{margin-bottom:26px}
.bhikharam-product .product-info-main,.bhikharam-product .product.media{margin-bottom:70px}
.bhikharam-product .product.media{border:1px solid var(--line);background:var(--paper);padding:28px}
.bhikharam-product .product-info-main{padding:22px 0 0}
.bhikharam-product .product-info-main .page-title{font-size:clamp(48px,5vw,70px);letter-spacing:-.04em;line-height:.94}
.bhikharam-product .product-info-price{border:0;margin:10px 0 0;padding:0}
.bhikharam-product .product-info-price .price-box{padding:0}
.bhikharam-product .product-info-price .price{font-size:36px}
.bhikharam-product .product-add-form{margin-top:24px;padding:22px 0}
.bhikharam-product .product-options-wrapper .fieldset>.field{margin-bottom:22px}
.bhikharam-product .swatch-option{border:1px solid var(--line);border-radius:0;background:var(--ivory);min-width:48px;height:38px;line-height:26px}
.bhikharam-product .swatch-option.selected{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.bhikharam-product .box-tocart{margin:0}
.bhikharam-product .box-tocart .field.qty{margin-right:12px}
.bhikharam-product .box-tocart .input-text.qty{height:52px;width:58px}
.bhikharam-product .box-tocart .action.tocart{font-size:14px;min-height:52px;padding:0 34px}
.bhikharam-product .product-social-links{border-bottom:1px solid var(--line);padding:18px 0}
.bhikharam-product .product.info.detailed{clear:both;margin:0 auto 70px;max-width:1400px}
.bhikharam-product .product.data.items>.item.content{background:var(--white);border-color:var(--line);padding:28px}
.bhikharam-product .product-story{clear:both;margin-left:calc(-1 * clamp(24px,5vw,80px));margin-right:calc(-1 * clamp(24px,5vw,80px))}
.bhikharam-product .block.related{margin:72px 0 90px}
.bhikharam-product .block.related .block-title{font:700 38px Georgia,serif;color:var(--indigo);margin-bottom:28px}
.bhikharam-product .block.related .products-grid .product-items{align-items:stretch}
.bhikharam-product .block.related .product-item-info{display:flex!important;flex-direction:column;width:100%!important;height:100%}
.bhikharam-product .block.related .product-item-details{display:block!important;float:none!important;width:100%!important;max-width:none!important;padding:22px!important}
.bhikharam-product .block.related .product-item-name,.bhikharam-product .block.related .product-item-name a{display:block!important;width:100%!important;max-width:none!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}

/* Cart: prototype two-column bag and sticky summary */
.bhikharam-cart .page-title-wrapper{padding:42px 0 24px}
.bhikharam-cart .cart-container{align-items:start;display:grid;grid-template-columns:minmax(0,1fr) 390px;grid-template-rows:auto;gap:60px}
.bhikharam-cart .cart-container .form-cart{float:none!important;grid-column:1;grid-row:1;margin:0!important;position:relative;width:auto!important;border-color:var(--indigo);padding-top:16px}
.bhikharam-cart .cart-summary{float:none!important;grid-column:2;grid-row:1;margin:0!important;position:static;width:auto!important;height:auto!important;min-height:0;border-color:var(--red);padding:30px}
.bhikharam-cart .cart.table-wrapper .cart.item{border-bottom:1px solid var(--line)}
.bhikharam-cart .cart.table-wrapper .item .col.item{padding:24px 12px 24px 0}
.bhikharam-cart .cart.table-wrapper .product-item-photo{background:var(--paper);padding:12px}
.bhikharam-cart .cart.table-wrapper .product-item-name{font-size:26px;line-height:1.08}
.bhikharam-cart .cart.table-wrapper .col.price,.bhikharam-cart .cart.table-wrapper .col.subtotal{font:700 23px Georgia,serif;color:var(--red)}
.bhikharam-cart .cart-summary>.title{font:700 34px Georgia,serif;color:var(--indigo)}
.bhikharam-cart .cart-summary .block{clear:both;position:relative;margin-top:18px}
.bhikharam-cart .cart-summary .block>.title{height:auto;overflow:visible;position:relative}
.bhikharam-cart .cart-totals{border-top:1px solid var(--line)}
.bhikharam-cart .cart-totals .grand .amount,.bhikharam-cart .cart-totals .grand .mark{font-size:21px}
.bhikharam-cart .checkout-methods-items .action.primary.checkout{width:100%;font-size:17px;min-height:62px}

/* Checkout: branded shell around native Knockout flow */
.checkout-index-index .page-wrapper{background:var(--paper)}
.checkout-index-index .page-header{background:var(--ivory);border-bottom:1px solid var(--line);min-height:104px}
.checkout-index-index .header.content{min-height:104px}
.checkout-index-index .nav-sections,.checkout-index-index .panel.wrapper,.checkout-index-index .minicart-wrapper,.checkout-index-index .block-search{display:none}
.checkout-index-index .page-main{max-width:1240px;padding:44px 28px 80px}
.checkout-index-index .checkout-container{margin:0}
.checkout-index-index .opc-progress-bar{margin:0 0 38px;width:calc(66.666% - 20px)}
.checkout-index-index .opc-progress-bar-item:before{background:var(--line)}
.checkout-index-index .opc-progress-bar-item._active:before{background:var(--red)}
.checkout-index-index .opc-progress-bar-item._active>span:before{background:var(--red)}
.checkout-index-index .opc-wrapper{width:calc(66.666% - 34px);background:var(--ivory);border:1px solid var(--line);padding:40px}
.checkout-index-index .opc-sidebar{width:33.333%;margin:0}
.checkout-index-index .opc-block-summary{padding:30px;border-color:var(--indigo)}
.checkout-index-index .opc-wrapper .step-title{font-size:42px;line-height:1.05;padding-bottom:18px}
.checkout-index-index .fieldset>.field>.label{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.checkout-index-index .table-checkout-shipping-method{border:1px solid var(--line);background:var(--white)}
.checkout-index-index .table-checkout-shipping-method tbody td{padding:18px 12px}
.checkout-index-index .checkout-shipping-method .actions-toolbar{margin-top:28px}
.checkout-index-index .checkout-shipping-method .action.primary{min-width:150px;min-height:52px}
.checkout-index-index .opc-block-summary .product-item .product-item-name{font:700 20px Georgia,serif;color:var(--indigo);word-break:normal}
.checkout-index-index .page-footer{background:var(--indigo);padding:16px}
.checkout-index-index .page-footer .footer.content{display:none}

/* Customer login/create account */
.customer-account-login .page-title-wrapper,.customer-account-create .page-title-wrapper{padding-top:38px}
.customer-account-login .login-container{align-items:start;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:32px}
.customer-account-login .login-container .block-new-customer{float:none!important;grid-column:1;grid-row:1}
.customer-account-login .login-container .block-customer-login{float:none!important;grid-column:2;grid-row:1}
.customer-account-login .login-container .block{width:auto!important;margin:0;background:var(--ivory);border:1px solid var(--line);border-top:8px solid var(--indigo);padding:36px}
.customer-account-login .block-title,.customer-account-create .legend{font:700 32px Georgia,serif!important;color:var(--indigo)}
.customer-account-create .form-create-account{max-width:920px;margin:0 auto 70px;background:var(--ivory);border:1px solid var(--line);border-top:8px solid var(--indigo);padding:38px}

/* Customer account and wish list */
.account .page-main{padding-top:42px;padding-bottom:80px}
.account.page-layout-2columns-left .columns{align-items:start;display:grid;gap:46px;grid-template-columns:250px minmax(0,1fr)}
.account.page-layout-2columns-left .sidebar-main,.account.page-layout-2columns-left .sidebar-additional,.account.page-layout-2columns-left .column.main{float:none!important;margin:0;padding:0;width:100%!important}
.account.page-layout-2columns-left .sidebar-main{grid-column:1;grid-row:1}
.account.page-layout-2columns-left .sidebar-additional{grid-column:1;grid-row:2}
.account.page-layout-2columns-left .column.main{grid-column:2;grid-row:1 / span 3;min-width:0}
.account .sidebar .block{border:1px solid var(--line);border-top:8px solid var(--indigo);margin:0 0 28px;padding:24px}
.account .sidebar .block-collapsible-nav{padding:12px 0}
.account .sidebar .block-collapsible-nav .item a,.account .sidebar .block-collapsible-nav .item>strong{padding:12px 20px}
.account .sidebar .block-wishlist .product-items{margin:0;padding:0}
.account .sidebar .block-wishlist .product-item{margin:0 0 22px;padding:0;width:100%}
.account .sidebar .block-wishlist .product-item-info{align-items:start;display:grid!important;gap:12px;grid-template-columns:50px minmax(0,1fr);width:100%!important}
.account .sidebar .block-wishlist .product-item-photo{float:none;margin:0;padding:0;position:static!important;width:50px}
.account .sidebar .block-wishlist .product-item-details{float:none;margin:0!important;min-width:0;padding:0;width:auto!important}
.account .sidebar .block-wishlist .product-item-name{font:700 17px/1.15 Georgia,serif;margin:0;overflow-wrap:normal;word-break:normal}
.account .sidebar .block-wishlist .product-item-name a{white-space:normal}
.account .sidebar .block-wishlist .price-box .price{font-size:18px}
.account .sidebar .block-wishlist .product-item-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.account .sidebar .block-wishlist .action.tocart{font-size:11px;min-width:0;padding:10px 12px}
.wishlist-index-index .page-title-wrapper{margin:0 0 28px}
.wishlist-index-index .page-title-wrapper .page-title{font-size:clamp(44px,5vw,68px)}
.wishlist-index-index .form-wishlist-items{width:100%}
.wishlist-index-index .products-grid.wishlist{margin:0}
.wishlist-index-index .products-grid.wishlist .product-items{display:grid;gap:28px;grid-template-columns:repeat(3,minmax(0,285px));justify-content:start;margin:0;padding:0}
.wishlist-index-index .products-grid.wishlist .product-item{border:1px solid var(--line);float:none;margin:0!important;padding:0 0 22px;width:100%!important}
.wishlist-index-index .products-grid.wishlist .product-item-info{display:flex;flex-direction:column;width:100%}
.wishlist-index-index .products-grid.wishlist .product-item-photo{display:block;margin:0;padding:18px;text-align:center;width:auto}
.wishlist-index-index .products-grid.wishlist .product-item-photo img{height:220px;max-width:100%;object-fit:contain;width:100%}
.wishlist-index-index .products-grid.wishlist .product-item .product-item-details{box-sizing:border-box;float:none!important;margin:0!important;padding:24px 24px 0!important;width:100%!important}
.wishlist-index-index .products-grid.wishlist .product-item-info>.product-item-name,.wishlist-index-index .products-grid.wishlist .product-item-info>.product-reviews-summary,.wishlist-index-index .products-grid.wishlist .product-item-info>.price-box,.wishlist-index-index .products-grid.wishlist .product-item-info>.product-item-tooltip,.wishlist-index-index .products-grid.wishlist .product-item-info>.product-item-inner{box-sizing:border-box;margin-left:24px!important;margin-right:24px!important;width:auto!important}
.wishlist-index-index .products-grid.wishlist .product-item-info>.product-item-name{display:block;margin-top:22px!important}
.wishlist-index-index .products-grid.wishlist .product-item-info>.product-item-inner{margin-top:14px!important}
.wishlist-index-index .products-grid.wishlist .product-item-name{font:700 24px/1.05 Georgia,serif;word-break:normal}
.wishlist-index-index .products-grid.wishlist .price-box{margin:10px 0}
.wishlist-index-index .products-grid.wishlist .product-item-actions{margin:14px 0 0}
.wishlist-index-index .products-grid.wishlist textarea{box-sizing:border-box;width:100%}
.wishlist-index-index .products-grid.wishlist .product-item-actions,.wishlist-index-index .products-grid.wishlist .product-item-inner{box-sizing:border-box;width:100%}
.wishlist-index-index .form-wishlist-items>.actions-toolbar{margin-top:28px}

/* Branded footer using native newsletter and copyright blocks */
.bhikharam-blockprint .page-footer{padding:0;background:var(--ink)}
.bhikharam-blockprint .footer.content{align-items:start;display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(90px,.55fr) minmax(110px,.65fr) minmax(150px,.85fr) minmax(300px,1.35fr);gap:clamp(24px,3vw,52px);max-width:none;padding:64px clamp(24px,5vw,80px) 30px}
.brand-footer{display:contents}
.brand-footer__identity img{width:95px;height:80px;object-fit:contain;background:transparent;padding:0}
.brand-footer__identity p{color:#cfc2b4;max-width:300px}
.brand-footer__phone{align-items:center;display:flex!important;gap:8px;margin-top:15px}
.brand-footer__phone svg{fill:var(--marigold);height:17px;width:17px}
.brand-footer__social{display:flex;gap:10px;margin-top:18px}
.brand-footer__social a{align-items:center;border:1px solid #76675d;border-radius:50%;display:flex;height:34px;justify-content:center;transition:.2s ease;width:34px}
.brand-footer__social a:hover,.brand-footer__social a:focus{background:var(--marigold);border-color:var(--marigold)}
.brand-footer__social svg{fill:#f4e8da;height:16px;width:16px}
.brand-footer__social a:hover svg,.brand-footer__social a:focus svg{fill:var(--ink)}
.brand-footer nav{display:flex;flex-direction:column;gap:9px}
.brand-footer h3,.page-footer .block.newsletter .title{display:block;color:var(--marigold);font:700 20px Georgia,serif;margin:0 0 14px}
.brand-footer a{color:#e4d9cc;font-size:14px}
.page-footer .block.newsletter{align-self:start;float:none!important;margin:0!important;width:auto!important;max-width:none}
.page-footer .block.newsletter .content{display:block}
.page-footer .block.newsletter .field.newsletter{max-width:none}
.page-footer .block.newsletter .form.subscribe{display:flex;margin-top:8px;width:100%}
.page-footer .block.newsletter .field.newsletter{flex:1;margin:0!important;min-width:0}
.page-footer .block.newsletter .actions{display:block;flex:0 0 auto;width:auto}
.page-footer .block.newsletter input{height:45px;color:#fff;background:transparent;border:1px solid #76675d}
.page-footer .block.newsletter .action.subscribe{height:45px;min-width:110px;padding:0 16px;border-radius:0;background:var(--red)}
.page-footer .copyright{grid-column:1/-1;border-top:1px solid #51433a;background:transparent;color:#a99a8e;margin-top:20px;padding:22px 0 0;text-align:left}

/* Approved prototype parity: Magento's three native header rows are visually
   composed into the prototype's single 102px storefront header. */
@media (min-width:901px){
    .bhikharam-blockprint .page-wrapper{position:relative}
    .bhikharam-blockprint .page-header{height:102px;min-height:102px;position:relative}
    .bhikharam-blockprint .header.content{display:block;height:102px;min-height:102px;max-width:none;padding:0 clamp(24px,5vw,80px);position:relative}
    .bhikharam-blockprint .logo{height:82px;left:clamp(24px,5vw,80px);margin:0;max-width:100px;position:absolute;top:10px;width:100px}
    .bhikharam-blockprint .logo img{height:82px;max-height:82px;object-fit:contain;width:100px}
    .bhikharam-blockprint .block-search{float:none;margin:0;max-width:none;position:absolute;right:254px;top:29px;width:200px;z-index:6}
    .bhikharam-blockprint #search_mini_form{align-items:stretch;display:flex;height:44px;width:100%}
    .bhikharam-blockprint .block-search .field.search{display:block;flex:1;height:44px;margin:0;min-width:0}
    .bhikharam-blockprint .block-search .control{height:44px;margin:0!important}
    .bhikharam-blockprint .block-search input#search{height:44px;margin:0;width:100%}
    .bhikharam-blockprint .block-search .actions{display:block;flex:0 0 46px;height:44px;width:46px}
    .bhikharam-blockprint .block-search .action.search{display:block!important;height:44px;margin:0;position:relative;right:auto;top:auto;width:46px}
    .bhikharam-blockprint .block-search .nested{display:none}
    .bhikharam-blockprint .minicart-wrapper{align-items:center;display:flex;float:none;height:102px;margin:0;position:absolute;right:36px;top:0;z-index:7}
    .bhikharam-blockprint .minicart-wrapper .action.showcart{align-items:center;display:flex;gap:8px;min-width:90px}
    .bhikharam-blockprint .minicart-wrapper .action.showcart:before{background:center/20px 20px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23122f61' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 12H6L5 8Z'/%3E%3Cpath d='M9 9V6a3 3 0 0 1 6 0v3'/%3E%3C/svg%3E");content:"";display:block;height:22px;margin:0;order:-2;width:22px}
    .bhikharam-blockprint .minicart-wrapper .action.showcart:after{color:var(--ink);content:"BAG";font-size:12px;font-weight:800;letter-spacing:.06em;order:-1}
    .bhikharam-blockprint .minicart-wrapper .action.showcart .counter.qty{background:var(--red);border-radius:50%;height:20px;line-height:20px;margin:0;min-width:20px;padding:0}
    .bhikharam-blockprint .panel.wrapper{background:transparent;border:0;display:block;height:102px;left:auto;position:absolute;right:156px;top:0;width:96px;z-index:8}
    .bhikharam-blockprint .header.panel{align-items:center;display:flex;height:102px;max-width:none;padding:0}
    .bhikharam-blockprint .header.links{display:block;margin:0;padding:0}
    .bhikharam-blockprint .panel.wrapper .header.links>li{display:none!important}
    .bhikharam-blockprint .panel.wrapper .header.links>li:first-child{display:block!important;margin:0!important}
    .bhikharam-blockprint .header.links>li:first-child>a{align-items:center;color:var(--ink);display:inline-flex;font-size:11px;font-weight:800;gap:6px;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}
    .bhikharam-blockprint .header.links>li:first-child>a:before{background:center/18px 18px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23122f61' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E");content:"";display:block;flex:0 0 18px;height:18px;width:18px}
    .bhikharam-blockprint .nav-sections{background:transparent;border:0;height:102px;left:calc(clamp(24px,5vw,80px) + 120px);margin:0;position:absolute;right:438px;top:81px;z-index:7}
    .bhikharam-blockprint .navigation{align-items:center;display:flex;height:102px;padding:0}
    .bhikharam-blockprint .navigation>ul{align-items:center;display:flex;height:102px;margin:0}
    .bhikharam-blockprint .nav-sections .header.links{display:none!important}
    .bhikharam-blockprint .navigation .level0>.level-top{font-size:11px;line-height:102px;padding:0 9px;white-space:nowrap}
    .bhikharam-blockprint .navigation>ul>.bhikharam-overflow-item{display:none!important}
    .bhikharam-blockprint .navigation .bhikharam-more-menu{display:block;position:relative}
    .bhikharam-blockprint .navigation .bhikharam-more-menu>.level-top{background:transparent;border:0;color:var(--ink);cursor:pointer;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
    .bhikharam-blockprint .navigation .bhikharam-more-menu>.submenu{background:var(--ivory);border:1px solid var(--line);box-shadow:0 8px 20px rgba(18,47,97,.16);box-sizing:border-box;display:none!important;left:auto!important;min-width:210px;padding:8px 0!important;right:0!important;top:76px!important}
    .bhikharam-blockprint .navigation .bhikharam-more-menu:hover>.submenu,.bhikharam-blockprint .navigation .bhikharam-more-menu:focus-within>.submenu,.bhikharam-blockprint .navigation .bhikharam-more-menu.is-open>.submenu{display:block!important}
    .bhikharam-blockprint .navigation .bhikharam-more-menu>.submenu a{box-sizing:border-box;color:var(--ink);display:block;font-size:12px;font-weight:700;line-height:1.35;padding:12px 18px;white-space:nowrap}
    .bhikharam-blockprint .navigation .bhikharam-more-menu>.submenu a:hover,.bhikharam-blockprint .navigation .bhikharam-more-menu>.submenu a:focus{background:var(--paper);color:var(--red)}
    .bhikharam-home .hero h1{font-weight:700}
    .bhikharam-home .products-section .product-description{display:none}
    .bhikharam-home .products-section .product-info{padding-bottom:24px}
}

.page-footer .block.newsletter .title strong{font-size:0}
.page-footer .block.newsletter .title strong:after{content:"Get the latest offers";font-size:18px}
.page-footer .block.newsletter .content:before{color:#cfc2b4;content:"Fresh launches and festive favourites, straight to your inbox.";display:block;font-size:14px;margin:0 0 12px}
.bhikharam-blockprint .page-footer .copyright{font-size:0}
.bhikharam-blockprint .page-footer .copyright:after{content:"© Bhikharam Chandmal Bhujiawala";font-size:12px}

/* Legacy information pages, rebuilt without the old placeholder sections. */
.bhikharam-info-page{color:var(--ink);margin:0 auto;max-width:1120px;padding:30px 0 72px}
.bhikharam-info-page__intro{background:var(--paper);border-top:7px solid var(--indigo);margin-bottom:34px;padding:clamp(26px,5vw,58px)}
.bhikharam-info-page__eyebrow{color:var(--red);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.bhikharam-info-page h1{color:var(--indigo);font:700 clamp(44px,6vw,76px)/.98 Georgia,serif;margin:12px 0 20px}
.bhikharam-info-page h2{color:var(--indigo);font:700 30px/1.1 Georgia,serif;margin:34px 0 14px}
.bhikharam-info-page h3{color:var(--ink);font-size:17px;margin:25px 0 8px}
.bhikharam-info-page p,.bhikharam-info-page li{font-size:16px;line-height:1.7}
.bhikharam-info-page__content{padding:0 clamp(10px,4vw,48px)}
.bhikharam-info-page__content ul{padding-left:22px}
.bhikharam-info-page__callout{background:var(--indigo);color:#fff;margin-top:34px;padding:28px 34px}
.bhikharam-info-page__callout h2{color:#fff;margin-top:0}

/* Admin-editable homepage banner carousel */
.home-hero-carousel{overflow:hidden;position:relative}
.home-hero-carousel__track{display:grid}
.home-hero-slide{grid-area:1/1;opacity:0;pointer-events:none;transition:opacity .55s ease;visibility:hidden;z-index:0}
.home-hero-slide.is-active{opacity:1;pointer-events:auto;visibility:visible;z-index:1}
.home-hero-slide .hero-image--product{align-items:center;background:linear-gradient(135deg,#fff9ee,#f1dfbd);display:flex;justify-content:center;overflow:hidden;padding:42px 70px}
.home-hero-slide .hero-image--product img{height:100%;max-height:455px;object-fit:contain;position:relative;width:100%;z-index:1}
.home-hero-slide .hero-image--sweet{align-items:stretch;background:linear-gradient(135deg,#fff8e9,#e7c382);padding:0}
.home-hero-slide .hero-image--sweet img{height:100%;max-height:none;object-fit:cover;object-position:center;width:100%}
.home-hero-carousel__control{align-items:center;background:rgba(255,250,240,.92);border:1px solid rgba(18,47,97,.18);border-radius:50%;box-shadow:0 5px 16px rgba(18,47,97,.15);color:var(--indigo);display:flex;font:400 32px/1 Georgia,serif;height:46px;justify-content:center;margin:0;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:46px;z-index:4}
.home-hero-carousel__control:hover,.home-hero-carousel__control:focus{background:var(--indigo);color:#fff}
.home-hero-carousel__control--previous{left:18px}
.home-hero-carousel__control--next{right:18px}
.home-hero-carousel__dots{align-items:center;bottom:18px;display:flex;gap:10px;justify-content:center;left:0;position:absolute;right:0;z-index:4}
.home-hero-carousel__dots button{background:rgba(255,255,255,.92);border:2px solid var(--indigo);border-radius:50%;height:12px;margin:0;padding:0;width:12px}
.home-hero-carousel__dots button.is-active{background:var(--red);border-color:var(--red)}
.home-hero-slide--campaign{display:block;isolation:isolate;position:relative}
.home-hero-slide--campaign .hero-copy{background:linear-gradient(90deg,rgba(255,250,239,.98) 0%,rgba(255,250,239,.92) 62%,rgba(255,250,239,.58) 82%,rgba(255,250,239,0) 100%);box-sizing:border-box;max-width:58%;min-height:540px;position:relative;z-index:2}
.home-hero-slide--campaign .hero-image--campaign{inset:0;min-height:540px;position:absolute;z-index:0}
.home-hero-slide--campaign .hero-image--campaign img{height:100%;object-fit:cover;object-position:center;width:100%}
.home-hero-slide--campaign .hero-image--campaign .zigzag{display:none}
.home-hero-slide--campaign[aria-label="1 of 3"] .hero-copy,
.home-hero-slide--campaign[aria-label="2 of 3"] .hero-copy{-webkit-mask-image:linear-gradient(to bottom,#000 0,#000 78%,rgba(0,0,0,.78) 86%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0,#000 78%,rgba(0,0,0,.78) 86%,transparent 100%)}

@media (max-width:900px){
    .bhikharam-blockprint .header.content{grid-template-columns:84px 1fr 42px;gap:14px;padding:8px 20px}
    .bhikharam-blockprint .logo{grid-column:1}.bhikharam-blockprint .block-search{grid-column:2}.bhikharam-blockprint .minicart-wrapper{grid-column:3}
    .bhikharam-category .columns{padding:0 22px 70px}.bhikharam-category .category-products{padding-inline:0}.bhikharam-category.page-layout-2columns-left .column.main{width:100%}.bhikharam-category.page-layout-2columns-left .sidebar-main{width:100%;padding:0}
    .bhikharam-cart .cart-container{grid-template-columns:1fr}.bhikharam-cart .cart-container .form-cart{grid-column:1;grid-row:2}.bhikharam-cart .cart-summary{grid-column:1;grid-row:1;position:static}
    .checkout-index-index .opc-progress-bar{width:100%}.checkout-index-index .opc-wrapper{width:100%;padding:30px}.checkout-index-index .opc-sidebar{width:100%;margin-top:30px}
    .customer-account-login .login-container{grid-template-columns:1fr}.customer-account-login .login-container .block-customer-login{grid-column:1;grid-row:1}.customer-account-login .login-container .block-new-customer{grid-column:1;grid-row:2}
    .account.page-layout-2columns-left .columns{gap:30px;grid-template-columns:210px minmax(0,1fr)}
    .wishlist-index-index .products-grid.wishlist .product-items{grid-template-columns:repeat(2,minmax(0,285px))}
    .bhikharam-blockprint .footer.content{grid-template-columns:1fr}.brand-footer{display:grid;grid-template-columns:1.3fr .7fr .7fr .9fr;gap:35px}
}
@media (max-width:620px){
    .bhikharam-blockprint .panel.wrapper{display:none}.bhikharam-blockprint .page-header{min-height:88px}.bhikharam-blockprint .header.content{align-items:center;grid-template-columns:102px 1fr 38px;grid-template-rows:88px;height:88px;min-height:88px;padding:0 16px}.bhikharam-blockprint .nav-toggle{z-index:5}.bhikharam-blockprint .logo{grid-row:1;margin-left:40px}.bhikharam-blockprint .logo img{max-height:66px}.bhikharam-blockprint .block-search{align-self:center;grid-row:1;height:40px}.bhikharam-blockprint #search_mini_form{display:flex;height:40px}.bhikharam-blockprint .block-search .field.search{display:block;flex:1;height:40px}.bhikharam-blockprint .block-search .label{display:none!important}.bhikharam-blockprint .block-search .control{border:0!important;margin:0!important;padding:0!important;width:100%}.bhikharam-blockprint .block-search input#search{height:40px;left:auto;margin:0;position:static;width:100%}.bhikharam-blockprint .block-search .actions{display:block;height:40px;width:46px}.bhikharam-blockprint .block-search .action.search{background:var(--indigo);display:block!important;height:40px;position:relative;width:46px}.bhikharam-blockprint .block-search .action.search span{font-size:0}.bhikharam-blockprint .block-search .action.search:before{border:2px solid #fff;border-radius:50%;content:"";display:block;height:11px;left:15px;position:absolute;top:11px;width:11px}.bhikharam-blockprint .block-search .action.search:after{background:#fff;content:"";display:block;height:2px;left:26px;position:absolute;top:24px;transform:rotate(45deg);width:7px}.bhikharam-blockprint .minicart-wrapper{align-self:center;grid-row:1}
    .category-hero{grid-template-columns:1fr;height:auto}.category-hero>div{padding:42px 22px}.category-hero img{height:230px}.bhikharam-category .category-hero{margin-bottom:34px}.bhikharam-category .columns{padding-inline:18px}.bhikharam-category .category-products{padding-inline:0}
    .bhikharam-product .product.media,.bhikharam-product .product-info-main{margin-bottom:36px}.bhikharam-product .product-story{margin-inline:-18px}.bhikharam-product .block.related .block-title{font-size:30px}
    .bhikharam-cart .page-title-wrapper{padding-top:25px}.bhikharam-cart .cart-container{gap:30px}.bhikharam-cart .cart-summary{padding:24px}
    .checkout-index-index .page-main{padding:28px 14px 60px}.checkout-index-index .opc-wrapper{padding:24px 18px}.checkout-index-index .opc-wrapper .step-title{font-size:34px}.checkout-index-index .opc-block-summary{padding:22px 18px}
    .customer-account-login .login-container .block,.customer-account-create .form-create-account{padding:26px 20px}
    .account.page-layout-2columns-left .columns{display:block}.account.page-layout-2columns-left .sidebar-main,.account.page-layout-2columns-left .sidebar-additional{margin-bottom:24px}.wishlist-index-index .products-grid.wishlist .product-items{grid-template-columns:minmax(0,1fr)}
    .bhikharam-blockprint .footer.content{padding:48px 22px 24px}.brand-footer{grid-template-columns:1fr}.brand-footer nav{border-top:1px solid #51433a;padding-top:20px}
    .bhikharam-info-page{padding-top:8px}.bhikharam-info-page__intro{margin-inline:-18px}
    .page-footer .block.newsletter .actions{width:96px}.page-footer .block.newsletter .action.subscribe{width:96px;padding:0 10px}.page-footer .block.newsletter .action.subscribe span{width:auto;white-space:nowrap}

    /* Magento moves the desktop customer links into the Account drawer on
       small screens. Keep that cloned list vertical and remove the repeated
       delivery message, which already appears in the utility bar. */
    .bhikharam-blockprint .nav-sections .header.links{display:block!important;margin:0!important;padding:0!important;width:100%}
    .bhikharam-blockprint .nav-sections .header.links>li{border-bottom:1px solid var(--line);display:block!important;float:none!important;margin:0!important;width:100%!important}
    .bhikharam-blockprint .nav-sections .header.links>li.greet.welcome{display:none!important}
    .bhikharam-blockprint .nav-sections .header.links>li>a{box-sizing:border-box;display:block!important;font-size:16px!important;font-weight:700;line-height:1.4;padding:16px 20px!important;text-align:left;white-space:normal;width:100%}

    .home-hero-carousel__control{height:38px;top:62%;width:38px}
    .home-hero-carousel__control--previous{left:8px}
    .home-hero-carousel__control--next{right:8px}
    .home-hero-carousel__dots{bottom:10px}
    .home-hero-slide .hero-image--product{min-height:300px;padding:26px 52px}
    .home-hero-slide .hero-image--product img{max-height:255px}
    .home-hero-slide .hero-image--sweet{padding:0}
    .home-hero-slide .hero-image--sweet img{height:300px;max-height:none;object-fit:cover;object-position:center}
    .home-hero-slide--campaign{display:grid}
    .home-hero-slide--campaign .hero-copy{background:linear-gradient(180deg,rgba(255,250,239,.98),rgba(255,250,239,.9));max-width:none;min-height:0}
    .home-hero-slide--campaign[aria-label="1 of 3"] .hero-copy,.home-hero-slide--campaign[aria-label="2 of 3"] .hero-copy{-webkit-mask-image:none;mask-image:none}
    .home-hero-slide--campaign .hero-image--campaign{inset:auto;min-height:300px;position:relative}
    .home-hero-slide--campaign .hero-image--campaign img{height:300px;object-position:64% center}
}

@media (prefers-reduced-motion:reduce){
    .home-hero-slide{transition:none}
}

/* Admin-editable offer and launch announcement ticker */
@keyframes bhikharam-announcement-scroll{
    from{transform:translateX(0)}
    to{transform:translateX(-50%)}
}
.announcement-ticker{background:var(--red);border-bottom:3px solid var(--marigold);color:#fff;height:37px;overflow:hidden;position:relative;z-index:9}
.announcement-ticker__track{align-items:center;animation:bhikharam-announcement-scroll 34s linear infinite;display:flex;height:100%;width:max-content;will-change:transform}
.announcement-ticker__group{align-items:center;display:flex;flex:none;height:100%;white-space:nowrap}
.announcement-ticker__group>*,.announcement-ticker__item{align-items:center;color:#fff!important;display:flex;font-size:12px;font-weight:800;letter-spacing:.09em;margin:0;text-decoration:none!important;text-transform:uppercase}
.announcement-ticker__group>*:after,.announcement-ticker__item:after{color:var(--marigold);content:"◆";font-size:9px;margin:0 34px}
.announcement-ticker__group a:hover,.announcement-ticker__group a:focus{color:#fff4c7!important;text-decoration:underline!important;text-underline-offset:3px}
.announcement-ticker:hover .announcement-ticker__track,.announcement-ticker:focus-within .announcement-ticker__track{animation-play-state:paused}

@media (max-width:620px){
    .announcement-ticker{height:34px}
    .announcement-ticker__track{animation-duration:25s}
    .announcement-ticker__group>*,.announcement-ticker__item{font-size:10px;letter-spacing:.07em}
    .announcement-ticker__group>*:after,.announcement-ticker__item:after{margin:0 22px}
}

@media (prefers-reduced-motion:reduce){
    .announcement-ticker{overflow-x:auto}
    .announcement-ticker__track{animation:none}
    .announcement-ticker__group[aria-hidden="true"]{display:none}
}

/* =========================================================
   Customer Sign Out - Bhikharam
   Keep Magento authorization link visible in desktop header
   ========================================================= */

@media (min-width: 768px) {
    .bhikharam-blockprint .panel.wrapper .header.links > li.authorization-link {
        display: block !important;
        margin: 0 !important;
    }

    .bhikharam-blockprint .panel.wrapper .header.links > li.authorization-link > a {
        display: inline-flex !important;
        align-items: center;
        color: var(--ink);
        font-size: 11px;
        font-weight: 800;
        letter-spacing: .055em;
        text-transform: uppercase;
        white-space: nowrap;
    }
}

/* =========================================================
   Customer Registration Form
   Newsletter checkbox + Registration OTP button
   ========================================================= */

/* Newsletter: keep checkbox beside the label */
.form-create-account .field.choice.newsletter {
    display: flex !important;
    align-items: center;
    gap: 10px;
}

.form-create-account .field.choice.newsletter .label {
    margin: 0 !important;
    order: 2;
    width: auto !important;
    float: none !important;
    text-align: left !important;
}

.form-create-account .field.choice.newsletter .control {
    order: 1;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
}

.form-create-account .field.choice.newsletter input[type="checkbox"] {
    margin: 0 !important;
    position: static !important;
}


/* Registration OTP button */
.form-create-account .mobile-otp-registration .action,
.form-create-account .mobile-otp-registration button,
.form-create-account button[data-role="send-otp"],
.form-create-account #send-registration-otp {
    background: #b51f2a;
    border: 1px solid #b51f2a;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 13px 25px;
    min-height: 46px;
    border-radius: 0;
    box-shadow: none;
}

.form-create-account .mobile-otp-registration .action:hover,
.form-create-account .mobile-otp-registration button:hover,
.form-create-account button[data-role="send-otp"]:hover,
.form-create-account #send-registration-otp:hover {
    background: #8f1720;
    border-color: #8f1720;
    color: #fff;
}

/* ==========================================================
   BHIKHARAM CUSTOMER REGISTRATION - PROFESSIONAL FORM UI
   ========================================================== */

.bhikharam-blockprint .form-create-account {
    max-width: 760px;
    margin: 0 auto;
}

/* Section headings */
.bhikharam-blockprint .form-create-account .fieldset > .legend {
    width: 100%;
    margin: 0 0 28px;
    padding: 0 0 14px;
    border-bottom: 1px solid rgba(18, 47, 97, 0.16);
    text-align: left;
}

.bhikharam-blockprint .form-create-account .fieldset > .legend span {
    font-size: 28px;
    line-height: 1.2;
    font-weight: 700;
    color: #123061;
}

/* Standard field row */
.bhikharam-blockprint .form-create-account .field:not(.choice) {
    display: grid !important;
    grid-template-columns: 165px minmax(0, 1fr);
    column-gap: 22px;
    align-items: center;
    margin: 0 0 20px !important;
}

/* Labels */
.bhikharam-blockprint .form-create-account .field:not(.choice) > .label {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    text-align: right !important;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 700;
    color: #202020;
}

/* Required asterisk */
.bhikharam-blockprint .form-create-account .field.required > .label:after,
.bhikharam-blockprint .form-create-account .field._required > .label:after {
    margin-left: 5px;
}

/* Controls */
.bhikharam-blockprint .form-create-account .field:not(.choice) > .control {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
}

/* Inputs */
.bhikharam-blockprint .form-create-account input.input-text,
.bhikharam-blockprint .form-create-account select {
    width: 100%;
    min-height: 48px;
    padding: 11px 14px;
    border: 1px solid #d7cdbd;
    border-radius: 2px;
    background: #fff;
    color: #222;
    font-size: 15px;
    line-height: 1.4;
    box-shadow: none;
    transition:
        border-color .18s ease,
        box-shadow .18s ease;
}

.bhikharam-blockprint .form-create-account input.input-text:focus,
.bhikharam-blockprint .form-create-account select:focus {
    border-color: #123061;
    box-shadow: 0 0 0 2px rgba(18, 48, 97, 0.08);
    outline: none;
}

/* ----------------------------------------------------------
   NEWSLETTER
   ---------------------------------------------------------- */

.bhikharam-blockprint .form-create-account .field.choice.newsletter {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;

    /* Align with input column */
    width: auto !important;
    margin: 4px 0 22px 187px !important;
    padding: 0 !important;
    float: none !important;
}

.bhikharam-blockprint .form-create-account .field.choice.newsletter input[type="checkbox"] {
    appearance: auto;
    -webkit-appearance: checkbox;
    position: static !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

.bhikharam-blockprint .form-create-account .field.choice.newsletter > .label,
.bhikharam-blockprint .form-create-account .field.choice.newsletter label {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    text-align: left !important;
    font-size: 15px;
    line-height: 18px;
    font-weight: 500;
    color: #262626;
    white-space: nowrap;
}

/* ----------------------------------------------------------
   DATE OF BIRTH
   ---------------------------------------------------------- */

.bhikharam-blockprint .form-create-account .customer-dob .control {
    position: relative;
}

.bhikharam-blockprint .form-create-account .customer-dob input {
    min-height: 48px;
}

/* ----------------------------------------------------------
   MOBILE OTP
   ---------------------------------------------------------- */

.bhikharam-blockprint .form-create-account .field.mobilenumber .control {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: stretch;
}

/* Exact button ID from registration.phtml */
.bhikharam-blockprint #registration-send-otp,
.bhikharam-blockprint #registration-verify-otp {
    min-width: 128px;
    min-height: 48px;
    margin: 0 !important;
    padding: 0 22px !important;

    border: 1px solid #b7242a !important;
    border-radius: 2px !important;

    background: #b7242a !important;
    color: #fff !important;

    font-size: 13px !important;
    line-height: 46px !important;
    font-weight: 800 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase;

    box-shadow: none !important;
    cursor: pointer;
    transition:
        background .18s ease,
        border-color .18s ease,
        transform .12s ease;
}

.bhikharam-blockprint #registration-send-otp:hover,
.bhikharam-blockprint #registration-verify-otp:hover {
    background: #941a20 !important;
    border-color: #941a20 !important;
    color: #fff !important;
}

.bhikharam-blockprint #registration-send-otp:active,
.bhikharam-blockprint #registration-verify-otp:active {
    transform: translateY(1px);
}

/* OTP row */
.bhikharam-blockprint #registration-otp-field .control {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: stretch;
}

/* OTP status message */
.bhikharam-blockprint #registration-otp-message {
    margin: -7px 0 20px 187px !important;
    padding: 11px 14px !important;
    border-radius: 2px;
    font-size: 14px;
    line-height: 1.4;
}

.bhikharam-blockprint #registration-otp-message.success {
    border: 1px solid #b8dfc2;
    background: #effaf2;
    color: #236b35;
}

.bhikharam-blockprint #registration-otp-message.error {
    border: 1px solid #ebc1c1;
    background: #fff1f1;
    color: #b42323;
}

/* ----------------------------------------------------------
   PASSWORD STRENGTH
   ---------------------------------------------------------- */

.bhikharam-blockprint .form-create-account .password-strength-meter {
    margin-top: 6px;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 2px;
    font-size: 13px;
    line-height: 20px;
}

/* Show Password */
.bhikharam-blockprint .form-create-account .field.choice.show-password {
    margin: 2px 0 24px 187px !important;
}

/* ----------------------------------------------------------
   CREATE ACCOUNT BUTTON
   ---------------------------------------------------------- */

.bhikharam-blockprint .form-create-account .actions-toolbar {
    margin: 28px 0 0 187px !important;
    padding: 0 !important;
}

.bhikharam-blockprint .form-create-account .actions-toolbar .primary {
    float: none !important;
}

.bhikharam-blockprint .form-create-account .actions-toolbar .action.submit.primary {
    min-height: 50px;
    padding: 0 30px;
}

/* Remove strange inherited widths/floats */
.bhikharam-blockprint .form-create-account .fieldset > .field:before,
.bhikharam-blockprint .form-create-account .fieldset > .field:after {
    display: none;
}

/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media (max-width: 767px) {

    .bhikharam-blockprint .form-create-account {
        width: 100%;
    }

    .bhikharam-blockprint .form-create-account .field:not(.choice) {
        display: block !important;
        margin-bottom: 18px !important;
    }

    .bhikharam-blockprint .form-create-account .field:not(.choice) > .label {
        display: block;
        margin-bottom: 7px !important;
        text-align: left !important;
    }

    .bhikharam-blockprint .form-create-account .field.choice.newsletter,
    .bhikharam-blockprint .form-create-account .field.choice.show-password,
    .bhikharam-blockprint .form-create-account .actions-toolbar,
    .bhikharam-blockprint #registration-otp-message {
        margin-left: 0 !important;
    }

    .bhikharam-blockprint .form-create-account .field.mobilenumber .control,
    .bhikharam-blockprint #registration-otp-field .control {
        grid-template-columns: 1fr;
    }

    .bhikharam-blockprint #registration-send-otp,
    .bhikharam-blockprint #registration-verify-otp {
        width: 100%;
    }
}


/* ==========================================================
   REGISTRATION FORM - FINAL POLISH
   ========================================================== */

/* Slightly wider, more balanced registration card */
.bhikharam-blockprint .form-create-account {
    max-width: 820px;
}

/* Reduce excessive vertical spacing between ordinary fields */
.bhikharam-blockprint .form-create-account .field:not(.choice) {
    margin-bottom: 17px !important;
}

/* Cleaner section separation */
.bhikharam-blockprint .form-create-account .fieldset {
    margin-bottom: 34px;
}

.bhikharam-blockprint .form-create-account .fieldset > .legend {
    margin-bottom: 25px;
}

/* Newsletter stays directly under the input column */
.bhikharam-blockprint .form-create-account .field.choice.newsletter {
    margin-top: -2px !important;
    margin-bottom: 24px !important;
}

/* Align Show Password with Email/Password input column */
.bhikharam-blockprint .form-create-account .field.choice.show-password {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    margin: -3px 0 0 187px !important;
    padding: 0 !important;
}

.bhikharam-blockprint .form-create-account .field.choice.show-password input {
    position: static !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
}

.bhikharam-blockprint .form-create-account .field.choice.show-password label {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;
    white-space: nowrap;
}

/* Give mobile + OTP fields identical proportions */
.bhikharam-blockprint .form-create-account .field.mobilenumber .control,
.bhikharam-blockprint #registration-otp-field .control {
    grid-template-columns: minmax(0, 1fr) 145px;
}

/* OTP buttons exactly same size */
.bhikharam-blockprint #registration-send-otp,
.bhikharam-blockprint #registration-verify-otp {
    width: 145px;
    min-width: 145px;
    padding: 0 12px !important;
    text-align: center;
}

/* Slightly more refined input appearance */
.bhikharam-blockprint .form-create-account input.input-text {
    border-color: #d9d0c3;
}

.bhikharam-blockprint .form-create-account input.input-text:hover {
    border-color: #b9aa96;
}

/* Create account button alignment */
.bhikharam-blockprint .form-create-account .actions-toolbar {
    margin-top: 32px !important;
    margin-bottom: 4px !important;
}

/* Mobile correction */
@media (max-width: 767px) {
    .bhikharam-blockprint .form-create-account .field.choice.show-password {
        margin-left: 0 !important;
    }

    .bhikharam-blockprint .form-create-account .field.mobilenumber .control,
    .bhikharam-blockprint #registration-otp-field .control {
        grid-template-columns: 1fr;
    }

    .bhikharam-blockprint #registration-send-otp,
    .bhikharam-blockprint #registration-verify-otp {
        width: 100%;
    }
}


/* ==========================================================
   Customer Registration — Final UI Polish
   ========================================================== */

.customer-account-create .page-title-wrapper {
    text-align: center;
    margin: 36px auto 34px;
}

.customer-account-create .page-title-wrapper .page-title {
    margin: 0;
}

.customer-account-create .page-title-wrapper .page-title span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(36px, 4vw, 52px);
    line-height: 1.05;
    font-weight: 700;
    letter-spacing: -0.025em;
    color: var(--indigo, #172c5b);
}

.customer-account-create .form.create.account {
    max-width: 760px;
    margin: 0 auto 70px;
    font-family: "Source Sans 3", sans-serif;
}

.customer-account-create .form.create.account .fieldset {
    margin: 0 0 34px;
    padding: 30px 34px 34px;
    background: #fff;
    border: 1px solid var(--line, #ddd3c4);
    box-sizing: border-box;
}

.customer-account-create .form.create.account .fieldset > .legend {
    width: 100%;
    margin: 0 0 26px;
    padding: 0 0 15px;
    border-bottom: 1px solid var(--line, #ddd3c4);
    box-sizing: border-box;
}

.customer-account-create .form.create.account .fieldset > .legend span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
    line-height: 1.2;
    font-weight: 700;
    color: var(--indigo, #172c5b);
}

.customer-account-create .form.create.account .field {
    margin: 0 0 21px;
}

.customer-account-create .form.create.account .field:last-child {
    margin-bottom: 0;
}

.customer-account-create .form.create.account .field > .label {
    display: block;
    margin: 0 0 8px;
    font-family: "Source Sans 3", sans-serif;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 700;
    color: #352d29;
}

.customer-account-create .form.create.account .field.required > .label:after {
    color: var(--red, #a72d2d);
}

.customer-account-create .form.create.account input[type="text"],
.customer-account-create .form.create.account input[type="email"],
.customer-account-create .form.create.account input[type="password"],
.customer-account-create .form.create.account input[type="tel"],
.customer-account-create .form.create.account input[type="date"],
.customer-account-create .form.create.account select {
    width: 100%;
    min-height: 48px;
    padding: 10px 13px;
    border: 1px solid #cfc5b7;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    box-sizing: border-box;
    font-family: "Source Sans 3", sans-serif;
    font-size: 15px;
    color: #352d29;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.customer-account-create .form.create.account input:focus,
.customer-account-create .form.create.account select:focus {
    border-color: var(--indigo, #172c5b);
    box-shadow: 0 0 0 2px rgba(23, 44, 91, .10);
    outline: none;
}

/* Registration Mobile OTP */

.customer-account-create .registration-mobile-otp {
    margin-top: 8px;
}

.customer-account-create .registration-mobile-otp .otp-mobile-row {
    display: flex;
    gap: 10px;
    align-items: stretch;
}

.customer-account-create .registration-mobile-otp .otp-mobile-row input {
    flex: 1 1 auto;
    min-width: 0;
}

.customer-account-create .registration-mobile-otp button,
.customer-account-create .registration-mobile-otp .action {
    min-height: 48px;
    padding: 0 20px;
    border: 1px solid var(--indigo, #172c5b);
    border-radius: 0;
    background: var(--indigo, #172c5b);
    color: #fff;
    font-family: "Source Sans 3", sans-serif;
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    white-space: nowrap;
    box-shadow: none;
}

.customer-account-create .registration-mobile-otp button:hover,
.customer-account-create .registration-mobile-otp .action:hover {
    background: var(--red, #a72d2d);
    border-color: var(--red, #a72d2d);
    color: #fff;
}

.customer-account-create .registration-mobile-otp .otp-code-row {
    display: flex;
    gap: 10px;
    align-items: stretch;
    margin-top: 12px;
}

.customer-account-create .registration-mobile-otp .otp-code-row input {
    flex: 1 1 auto;
    min-width: 0;
}

.customer-account-create .registration-mobile-otp .otp-status,
.customer-account-create .registration-mobile-otp .note,
.customer-account-create .registration-mobile-otp .mage-error {
    margin-top: 8px;
    font-family: "Source Sans 3", sans-serif;
    font-size: 12px;
    line-height: 1.45;
}

.customer-account-create .registration-mobile-otp .otp-status {
    color: #5f554d;
}

/* Checkbox fields */

.customer-account-create .form.create.account .field.choice {
    display: flex;
    align-items: center;
    gap: 9px;
}

.customer-account-create .form.create.account .field.choice input {
    margin: 0;
}

.customer-account-create .form.create.account .field.choice .label {
    margin: 0;
    font-weight: 400;
}

/* Main Create Account action */

.customer-account-create .form.create.account .actions-toolbar {
    margin-top: 10px;
    text-align: center;
}

.customer-account-create .form.create.account .actions-toolbar .primary {
    float: none;
}

.customer-account-create .form.create.account .actions-toolbar .action.primary {
    min-width: 220px;
    min-height: 52px;
    padding: 0 30px;
    border: 0;
    border-radius: 0;
    background: var(--red, #a72d2d);
    color: #fff;
    font-family: "Source Sans 3", sans-serif;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    box-shadow: 8px 8px 0 var(--marigold, #e9a51a);
    transition: transform .15s ease, box-shadow .15s ease;
}

.customer-account-create .form.create.account .actions-toolbar .action.primary:hover {
    background: var(--red, #a72d2d);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 10px 10px 0 var(--marigold, #e9a51a);
}

/* Mobile */

@media (max-width: 767px) {
    .customer-account-create .page-title-wrapper {
        margin: 25px auto 25px;
    }

    .customer-account-create .form.create.account {
        margin-bottom: 45px;
    }

    .customer-account-create .form.create.account .fieldset {
        padding: 24px 20px 27px;
    }

    .customer-account-create .registration-mobile-otp .otp-mobile-row,
    .customer-account-create .registration-mobile-otp .otp-code-row {
        display: block;
    }

    .customer-account-create .registration-mobile-otp button,
    .customer-account-create .registration-mobile-otp .action {
        width: 100%;
        margin-top: 9px;
    }

    .customer-account-create .form.create.account .actions-toolbar .action.primary {
        width: 100%;
    }
}

/* ==========================================================
   REGISTRATION - FINAL CORRECTIONS
   ========================================================== */

/* Do not turn Magento's empty additional-info placeholder
   into a visible card */
.customer-account-create
.form.create.account
fieldset.fieldset.additional_info:empty {
    display: none !important;
}

/* Some Magento blocks can leave whitespace inside the fieldset */
.customer-account-create
.form.create.account
fieldset.fieldset.additional_info:not(:has(*)) {
    display: none !important;
}

/* Slightly tighter cards */
.customer-account-create .form.create.account > .fieldset.create.info,
.customer-account-create .form.create.account > .fieldset.create.account {
    padding-top: 27px;
    padding-bottom: 29px;
}

/* Crisp field spacing */
.customer-account-create .form.create.account .field {
    margin-bottom: 17px;
}

/* Keep section heading breathing room */
.customer-account-create .form.create.account .fieldset > .legend {
    margin-bottom: 23px;
}

/* ==========================================================
   DOB WIDGET
   ========================================================== */

.customer-account-create .form.create.account .field-dob .control,
.customer-account-create .form.create.account .customer-dob .control {
    position: relative;
}

/* Keep DOB input and calendar trigger on one line */
.customer-account-create .form.create.account .field-dob .control {
    display: flex;
    align-items: center;
}

.customer-account-create .form.create.account .field-dob input {
    flex: 1 1 auto;
    min-width: 0;
}

/* Magento calendar icon */
.customer-account-create .form.create.account .field-dob .ui-datepicker-trigger {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    margin: 0 0 0 8px;
    padding: 0;
    border: 1px solid #cfc5b7;
    background-color: #fff;
    background-position: center;
    cursor: pointer;
}

/* ==========================================================
   CHOICE FIELDS
   ========================================================== */

.customer-account-create .form.create.account .field.choice {
    min-height: 22px;
}

.customer-account-create .form.create.account .field.choice input[type="checkbox"] {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    margin: 0 !important;
}

.customer-account-create .form.create.account .field.choice > .label {
    margin: 0 !important;
    line-height: 16px;
}

/* Password strength meter */
.customer-account-create .password-strength-meter {
    margin-top: 5px;
    padding: 7px 10px;
    min-height: 32px;
    box-sizing: border-box;
    font-size: 12px;
}

/* Keep final action closer to the form */
.customer-account-create .form.create.account .actions-toolbar {
    margin-top: 25px;
}


/* Registration - align Show Password with input column */
.customer-account-create
.form.create.account
.field.choice.show-password {
    margin-left: 187px !important;
}

@media (max-width: 767px) {
    .customer-account-create
    .form.create.account
    .field.choice.show-password {
        margin-left: 0 !important;
    }
}

/* ==========================================================
   REGISTRATION - MOBILE FINAL POLISH
   ========================================================== */

@media (max-width: 767px) {

    /* Page title */
    .customer-account-create .page-title-wrapper {
        margin: 28px 16px 25px;
    }

    .customer-account-create .page-title-wrapper .page-title span {
        display: block;
        font-size: clamp(34px, 10vw, 44px);
        line-height: .98;
        letter-spacing: -0.035em;
    }

    /* Main form */
    .customer-account-create .form.create.account {
        width: auto;
        max-width: none;
        margin: 0 14px 45px;
    }

    /* Registration cards */
    .customer-account-create .form.create.account > .fieldset.create.info,
    .customer-account-create .form.create.account > .fieldset.create.account {
        width: 100%;
        margin: 0 0 20px;
        padding: 22px 18px 25px;
        box-sizing: border-box;
    }

    /* Section headings */
    .customer-account-create
    .form.create.account
    .fieldset > .legend {
        margin-bottom: 21px;
        padding-bottom: 11px;
    }

    .customer-account-create
    .form.create.account
    .fieldset > .legend span {
        font-size: 24px;
        line-height: 1.15;
    }

    /* Fields */
    .customer-account-create .form.create.account .field {
        margin-bottom: 17px;
    }

    .customer-account-create
    .form.create.account
    .field > .label {
        margin-bottom: 6px;
        font-size: 13px;
        text-align: left !important;
    }

    .customer-account-create
    .form.create.account
    .field > .control {
        width: 100% !important;
    }

    /* Inputs */
    .customer-account-create
    .form.create.account
    input.input-text {
        width: 100% !important;
        min-height: 46px;
        box-sizing: border-box;
    }

    /* DOB */
    .customer-account-create
    .form.create.account
    .field-dob .control {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 46px;
        gap: 7px;
        width: 100%;
        box-sizing: border-box;
    }

    .customer-account-create
    .form.create.account
    .field-dob .ui-datepicker-trigger {
        width: 46px;
        height: 46px;
        margin: 0 !important;
        box-sizing: border-box;
    }

    /* Mobile / OTP fields */
    .customer-account-create
    .registration-mobile-otp
    .otp-mobile-row,
    .customer-account-create
    .registration-mobile-otp
    .otp-code-row {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .customer-account-create
    .registration-mobile-otp button,
    .customer-account-create
    .registration-mobile-otp .action {
        width: 100%;
        min-height: 44px;
        margin: 0 !important;
    }

    /* Checkbox rows */
    .customer-account-create
    .form.create.account
    .field.choice {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .customer-account-create
    .form.create.account
    .field.choice.show-password {
        margin-left: 0 !important;
    }

    /* Password strength */
    .customer-account-create .password-strength-meter {
        font-size: 11px;
        min-height: 30px;
        padding: 6px 8px;
    }

    /* Create Account */
    .customer-account-create
    .form.create.account
    .actions-toolbar {
        margin: 24px 0 0 !important;
        padding: 0;
    }

    .customer-account-create
    .form.create.account
    .actions-toolbar .action.primary {
        width: 100%;
        min-width: 0;
        min-height: 50px;
    }
}

/* ==========================================================
   REGISTRATION MOBILE - TYPOGRAPHY + WIDTH FINISHING
   ========================================================== */

@media (max-width: 767px) {

    /* Use more of the mobile viewport */
    .customer-account-create .form.create.account {
        margin-left: 8px !important;
        margin-right: 8px !important;
    }

    .customer-account-create
    .form.create.account > .fieldset.create.info,
    .customer-account-create
    .form.create.account > .fieldset.create.account {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    /* Keep page title compact */
    .customer-account-create .page-title-wrapper {
        margin-left: 12px !important;
        margin-right: 12px !important;
    }

    .customer-account-create
    .page-title-wrapper .page-title span {
        font-size: 31px !important;
        line-height: 1.02 !important;
        letter-spacing: -0.03em !important;
    }

    /* Prevent Personal Information from wrapping */
    .customer-account-create
    .form.create.account
    .fieldset > .legend span {
        font-size: 21px !important;
        white-space: nowrap;
    }

    /* Inputs slightly more compact */
    .customer-account-create
    .form.create.account
    input.input-text {
        min-height: 44px !important;
    }

    /* OTP actions */
    .customer-account-create
    .registration-mobile-otp button,
    .customer-account-create
    .registration-mobile-otp .action {
        min-height: 42px !important;
        font-size: 11px !important;
    }

    /* Main action */
    .customer-account-create
    .form.create.account
    .actions-toolbar .action.primary {
        min-height: 46px !important;
    }
}


/* Mobile DOB calendar */
@media (max-width: 767px) {
    #ui-datepicker-div {
        max-width: calc(100vw - 24px) !important;
        box-sizing: border-box;
        z-index: 99999 !important;
    }

    #ui-datepicker-div .ui-datepicker-calendar {
        width: 100%;
    }
}

/* ==========================================================
   BHIKHARAM MOBILE HEADER - FINAL
   Refines Magento native mobile navigation; desktop untouched.
   ========================================================== */

@media (max-width: 620px) {

    /* ----- Header shell ----- */

    .bhikharam-blockprint .page-header {
        min-height: 128px;
        background: var(--ivory);
        border-bottom: 1px solid var(--line);
    }

    .bhikharam-blockprint .header.content {
        position: relative;
        display: grid;
        grid-template-columns: 42px 1fr 42px;
        grid-template-rows: 78px 50px;
        gap: 0 10px;
        width: 100%;
        height: 128px;
        min-height: 128px;
        padding: 0 14px 10px;
        box-sizing: border-box;
        align-items: center;
    }

    /* ----- Hamburger ----- */

    .bhikharam-blockprint .nav-toggle {
        position: static;
        grid-column: 1;
        grid-row: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        margin: 0;
        padding: 0;
        z-index: 20;
    }

    .bhikharam-blockprint .nav-toggle:before {
        color: var(--indigo);
        font-size: 26px;
        line-height: 42px;
    }

    /* ----- Logo ----- */

    .bhikharam-blockprint .logo {
        position: static;
        grid-column: 2;
        grid-row: 1;
        justify-self: center;
        width: auto;
        max-width: 72px;
        margin: 0 !important;
        padding: 0;
    }

    .bhikharam-blockprint .logo img {
        display: block;
        width: auto;
        max-width: 72px;
        height: 64px;
        max-height: 64px;
        object-fit: contain;
    }

    /* ----- Cart ----- */

    .bhikharam-blockprint .minicart-wrapper {
        position: static;
        grid-column: 3;
        grid-row: 1;
        justify-self: end;
        align-self: center;
        float: none;
        width: 42px;
        height: 42px;
        margin: 0;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .bhikharam-blockprint
    .minicart-wrapper
    .action.showcart {
        position: relative;
        display: flex;
        width: 42px;
        height: 42px;
        min-width: 42px;
        align-items: center;
        justify-content: center;
    }

    .bhikharam-blockprint
    .minicart-wrapper
    .action.showcart:before {
        color: var(--indigo);
        font-size: 25px;
        line-height: 42px;
        margin: 0;
    }

    .bhikharam-blockprint
    .minicart-wrapper
    .action.showcart
    .counter.qty {
        position: absolute;
        top: 1px;
        right: -3px;
        min-width: 17px;
        height: 17px;
        margin: 0;
        padding: 0 4px;
        border-radius: 10px;
        background: var(--red);
        font-size: 10px;
        line-height: 17px;
        box-sizing: border-box;
    }

    /* ----- Search row ----- */

    .bhikharam-blockprint .block-search {
        position: static;
        grid-column: 1 / -1;
        grid-row: 2;
        align-self: start;
        width: 100%;
        max-width: none;
        height: 42px;
        margin: 0;
        padding: 0;
    }

    .bhikharam-blockprint #search_mini_form {
        display: flex;
        width: 100%;
        height: 42px;
    }

    .bhikharam-blockprint
    .block-search
    .field.search {
        display: block;
        flex: 1 1 auto;
        height: 42px;
        min-width: 0;
        margin: 0;
    }

    .bhikharam-blockprint
    .block-search
    .control {
        width: 100%;
        height: 42px;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }

    .bhikharam-blockprint
    .block-search
    input#search {
        position: static;
        left: auto;
        width: 100%;
        height: 42px;
        margin: 0;
        padding: 0 14px;
        border: 1px solid #cfc5b7;
        border-right: 0;
        box-sizing: border-box;
        font-size: 13px;
    }

    .bhikharam-blockprint
    .block-search
    .actions {
        display: block;
        flex: 0 0 46px;
        width: 46px;
        height: 42px;
    }

    .bhikharam-blockprint
    .block-search
    .action.search {
        position: relative;
        display: block !important;
        width: 46px;
        height: 42px;
        margin: 0;
        padding: 0;
        background: var(--indigo);
        border: 0;
    }

    /* ----- Native Magento mobile drawer ----- */

    .bhikharam-blockprint .nav-sections {
        background: var(--ivory);
    }

    .bhikharam-blockprint
    .nav-sections-item-title {
        background: var(--paper);
        border-color: var(--line);
    }

    .bhikharam-blockprint
    .nav-sections-item-title.active {
        background: var(--ivory);
    }

    .bhikharam-blockprint
    .navigation {
        background: var(--ivory);
    }

    .bhikharam-blockprint
    .navigation .level0 {
        border-top: 1px solid var(--line);
    }

    .bhikharam-blockprint
    .navigation .level0 > .level-top {
        color: var(--ink);
        font-size: 14px;
        font-weight: 800;
        letter-spacing: .045em;
        text-transform: uppercase;
    }

    /* Account links inside Magento drawer */

    .bhikharam-blockprint
    .nav-sections
    .header.links > li > a {
        color: var(--ink);
        font-size: 14px !important;
        font-weight: 700;
        letter-spacing: .02em;
    }
}

/* Mobile account drawer cleanup */
@media (max-width: 620px) {

    /* Utility message already exists above the header */
    .bhikharam-blockprint
    .nav-sections
    .header.links > li.greet.welcome {
        display: none !important;
    }

    /* Keep mobile Account menu focused on customer actions */
    .bhikharam-blockprint
    .nav-sections
    .header.links > li.compare {
        display: none !important;
    }

}

/* ==========================================================
   BHIKHARAM MOBILE CATEGORY DRAWER - POLISH
   ========================================================== */

@media (max-width: 620px) {

    /* Category list */
    .bhikharam-blockprint
    .nav-sections
    .navigation > ul {
        margin: 18px 0 0 !important;
        padding: 0 24px !important;
    }

    /* Main category rows */
    .bhikharam-blockprint
    .nav-sections
    .navigation .level0 {
        position: relative;
        display: block;
        width: 100%;
        margin: 0 !important;
        padding: 0 !important;
        border-top: 0 !important;
        border-bottom: 1px solid #d8cbb6 !important;
    }

    .bhikharam-blockprint
    .nav-sections
    .navigation .level0:first-child {
        border-top: 1px solid #d8cbb6 !important;
    }

    /* Main category link */
    .bhikharam-blockprint
    .nav-sections
    .navigation .level0 > .level-top {
        position: relative;
        display: flex !important;
        align-items: center;
        width: 100%;
        min-height: 54px;
        margin: 0 !important;
        padding: 0 48px 0 18px !important;
        box-sizing: border-box;
        color: #251d1a !important;
        font-size: 15px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;
        letter-spacing: .055em !important;
        text-transform: uppercase;
        background: transparent !important;
    }

    /* Remove desktop hover appearance */
    .bhikharam-blockprint
    .nav-sections
    .navigation .level0 > .level-top:hover {
        background: rgba(18, 48, 97, .035) !important;
        color: #123061 !important;
    }

    /* Magento submenu arrow */
    .bhikharam-blockprint
    .nav-sections
    .navigation .level0.parent > .level-top:after {
        position: absolute !important;
        top: 50% !important;
        right: 17px !important;
        margin: 0 !important;
        transform: translateY(-50%);
    }

    /* Open category */
    .bhikharam-blockprint
    .nav-sections
    .navigation .level0.active > .level-top,
    .bhikharam-blockprint
    .nav-sections
    .navigation .level0.has-active > .level-top {
        color: #123061 !important;
    }

    /* Subcategory panel */
    .bhikharam-blockprint
    .nav-sections
    .navigation .level0 .submenu {
        margin: 0 !important;
        padding: 4px 0 10px !important;
        background: rgba(18, 48, 97, .025) !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    .bhikharam-blockprint
    .nav-sections
    .navigation .level1 > a {
        display: flex !important;
        align-items: center;
        min-height: 44px;
        padding: 0 18px 0 32px !important;
        color: #443832 !important;
        font-size: 13px !important;
        line-height: 1.25;
        font-weight: 600 !important;
        letter-spacing: .02em;
        text-transform: none;
    }

    /* Drawer tabs */
    .bhikharam-blockprint
    .nav-sections-item-title {
        height: 74px;
        box-sizing: border-box;
    }

    .bhikharam-blockprint
    .nav-sections-item-title > a {
        display: flex;
        align-items: center;
        height: 100%;
        padding: 0 38px !important;
        box-sizing: border-box;
        font-size: 16px !important;
        font-weight: 600;
    }

    .bhikharam-blockprint
    .nav-sections-item-title.active > a {
        color: #123061 !important;
    }
}

/* ==========================================================
   MOBILE NAV - ACTIVE SUBCATEGORY
   ========================================================== */

@media (max-width: 620px) {

    /* Remove Magento/theme vertical active marker */
    .bhikharam-blockprint
    .nav-sections
    .navigation .level1.active,
    .bhikharam-blockprint
    .nav-sections
    .navigation .level1.has-active {
        border-left: 0 !important;
    }

    .bhikharam-blockprint
    .nav-sections
    .navigation .level1.active > a,
    .bhikharam-blockprint
    .nav-sections
    .navigation .level1.has-active > a {
        position: relative;
        color: #123061 !important;
        font-weight: 800 !important;
    }

    /* Small, restrained active indicator */
    .bhikharam-blockprint
    .nav-sections
    .navigation .level1.active > a:before {
        content: "";
        display: block;
        position: absolute;
        left: 15px;
        top: 50%;
        width: 6px;
        height: 6px;
        margin-top: -3px;
        border-radius: 50%;
        background: #123061;
    }
}


/* ==========================================================
   CUSTOMER LOGIN - FINAL PROFESSIONAL UI
   ========================================================== */

/* Page width */
.customer-account-login .page-main {
    max-width: 1320px;
}

/* Main title */
.customer-account-login .page-title-wrapper {
    margin-bottom: 42px;
}

.customer-account-login .page-title-wrapper .page-title {
    margin-bottom: 0;
}

/* ----------------------------------------------------------
   MOBILE OTP LOGIN
   ---------------------------------------------------------- */

.customer-account-login .mobile-otp-login {
    margin: 0 0 34px;
    padding: 30px 34px 32px;
    border: 1px solid #ded4c5;
    border-top: 6px solid #123061;
    background: rgba(255,255,255,.55);
    box-sizing: border-box;
}

.customer-account-login .mobile-otp-login__heading {
    display: block;
    margin: 0 0 24px;
}

/* Remove old circular icon */
.customer-account-login .mobile-otp-login__icon {
    display: none !important;
}

.customer-account-login .mobile-otp-login__text h2 {
    margin: 0 0 5px;
    color: #123061;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 28px;
    line-height: 1.15;
    font-weight: 700;
}

.customer-account-login .mobile-otp-login__text p {
    margin: 0;
    color: #4c443d;
    font-size: 14px;
    line-height: 1.5;
}

/* OTP form */
.customer-account-login .form.mobile-otp-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: end;
    max-width: 800px;
    margin: 0;
}

.customer-account-login .form.mobile-otp-form .field {
    margin: 0 !important;
}

.customer-account-login .form.mobile-otp-form .field > .label {
    display: block;
    margin: 0 0 7px !important;
    color: #27211d;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 700;
}

.customer-account-login .form.mobile-otp-form .control {
    width: 100%;
}

.customer-account-login .form.mobile-otp-form input.input-text {
    width: 100%;
    height: 48px;
    min-height: 48px;
    padding: 10px 14px;
    border: 1px solid #d4cabc;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    box-sizing: border-box;
}

.customer-account-login .form.mobile-otp-form input.input-text:focus {
    border-color: #123061;
    box-shadow: 0 0 0 2px rgba(18,48,97,.08);
    outline: none;
}

/* +91 prefix layout */
.customer-account-login .form.mobile-otp-form .control.mobile-otp-phone {
    display: flex;
    align-items: center;
    height: 48px;
    border: 1px solid #d4cabc;
    background: #fff;
    box-sizing: border-box;
}

.customer-account-login .form.mobile-otp-form .control.mobile-otp-phone .prefix {
    flex: 0 0 auto;
    padding-left: 14px;
    color: #29231f;
    font-weight: 700;
}

.customer-account-login .form.mobile-otp-form .control.mobile-otp-phone input {
    height: 46px;
    min-height: 46px;
    border: 0 !important;
    box-shadow: none !important;
}

/* OTP CTA */
.customer-account-login .form.mobile-otp-form .action.primary {
    min-width: 150px;
    height: 48px;
    min-height: 48px;
    margin: 0 !important;
    padding: 0 25px;
    border: 1px solid #b7242a;
    border-radius: 0;
    background: #b7242a;
    color: #fff;
    font-size: 12px;
    line-height: 46px;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
    box-shadow: none;
}

.customer-account-login .form.mobile-otp-form .action.primary:hover {
    border-color: #941a20;
    background: #941a20;
    color: #fff;
}


/* ----------------------------------------------------------
   STANDARD LOGIN / NEW CUSTOMER CARDS
   ---------------------------------------------------------- */

.customer-account-login .login-container {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: stretch;
}

.customer-account-login .login-container .block {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 32px 34px 34px !important;
    border: 1px solid #ded4c5;
    border-top: 6px solid #123061;
    background: rgba(255,255,255,.55);
    box-sizing: border-box;
}

/* Heading */
.customer-account-login .login-container .block-title {
    margin: 0 0 20px !important;
    padding: 0 0 13px !important;
    border-bottom: 1px solid #e2d8ca;
}

.customer-account-login .login-container .block-title strong {
    color: #123061;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 27px !important;
    line-height: 1.2;
    font-weight: 700 !important;
}

/* Card content */
.customer-account-login .login-container .block-content {
    color: #312b26;
    font-size: 14px;
    line-height: 1.55;
}

.customer-account-login .login-container .block-content > p {
    margin: 0 0 22px;
}


/* ----------------------------------------------------------
   REGISTERED CUSTOMER FORM
   ---------------------------------------------------------- */

.customer-account-login
.block-customer-login
.form-login
.fieldset {
    margin: 0;
}

.customer-account-login
.block-customer-login
.form-login
.field {
    display: grid;
    grid-template-columns: 105px minmax(0,1fr);
    gap: 16px;
    align-items: center;
    margin: 0 0 17px;
}

.customer-account-login
.block-customer-login
.form-login
.field > .label {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    text-align: right;
    color: #27211d;
    font-size: 13px;
    font-weight: 700;
}

.customer-account-login
.block-customer-login
.form-login
.field > .control {
    width: 100% !important;
    float: none !important;
}

.customer-account-login
.block-customer-login
.form-login
input.input-text {
    width: 100%;
    min-height: 46px;
    padding: 10px 13px;
    border: 1px solid #d4cabc;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    box-sizing: border-box;
}

.customer-account-login
.block-customer-login
.form-login
input.input-text:focus {
    border-color: #123061;
    box-shadow: 0 0 0 2px rgba(18,48,97,.08);
    outline: none;
}

/* Show Password */
.customer-account-login
.block-customer-login
.form-login
.field.choice {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 2px 0 22px 121px;
}

.customer-account-login
.block-customer-login
.form-login
.field.choice input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
}

.customer-account-login
.block-customer-login
.form-login
.field.choice > .label {
    margin: 0 !important;
    text-align: left;
    font-weight: 500;
}

/* Actions */
.customer-account-login
.block-customer-login
.actions-toolbar {
    display: flex;
    align-items: center;
    gap: 24px;
    margin: 0 0 0 121px !important;
}

.customer-account-login
.block-customer-login
.actions-toolbar > .primary,
.customer-account-login
.block-customer-login
.actions-toolbar > .secondary {
    float: none !important;
    margin: 0 !important;
}

.customer-account-login
.block-customer-login
.actions-toolbar .action.primary {
    min-height: 46px;
    padding: 0 25px;
}

.customer-account-login
.block-customer-login
.actions-toolbar .action.remind {
    margin: 0 !important;
    font-size: 13px;
}

/* Required fields message */
.customer-account-login
.block-customer-login
.fieldset:after {
    margin-left: 121px;
}


/* ----------------------------------------------------------
   NEW CUSTOMER CARD
   ---------------------------------------------------------- */

.customer-account-login
.block-new-customer
.actions-toolbar {
    margin: 24px 0 0 !important;
}

.customer-account-login
.block-new-customer
.actions-toolbar .action.primary {
    min-height: 46px;
    padding: 0 25px;
}


/* ==========================================================
   CUSTOMER LOGIN - MOBILE
   ========================================================== */

@media (max-width: 767px) {

    .customer-account-login .page-title-wrapper {
        margin: 28px 12px 26px;
    }

    .customer-account-login
    .page-title-wrapper .page-title span {
        font-size: 34px;
        line-height: 1.02;
    }

    /* OTP card */
    .customer-account-login .mobile-otp-login {
        margin: 0 8px 20px;
        padding: 22px 16px 24px;
        border-top-width: 5px;
    }

    .customer-account-login
    .mobile-otp-login__text h2 {
        font-size: 23px;
    }

    .customer-account-login
    .mobile-otp-login__text p {
        font-size: 13px;
    }

    .customer-account-login
    .form.mobile-otp-form {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        max-width: none;
    }

    .customer-account-login
    .form.mobile-otp-form .action.primary {
        width: 100%;
        min-width: 0;
        height: 46px;
        min-height: 46px;
    }

    /* Stack Magento cards */
    .customer-account-login .login-container {
        display: flex !important;
        flex-direction: column;
        gap: 20px;
        margin: 0 8px 42px;
    }

    /*
       Login first on mobile.
       Account creation follows authentication options.
    */
    .customer-account-login
    .login-container .block-customer-login {
        order: 1;
    }

    .customer-account-login
    .login-container .block-new-customer {
        order: 2;
    }

    .customer-account-login
    .login-container .block {
        width: 100% !important;
        padding: 22px 16px 25px !important;
    }

    .customer-account-login
    .login-container .block-title strong {
        font-size: 23px !important;
    }

    /* Standard login fields */
    .customer-account-login
    .block-customer-login
    .form-login
    .field {
        display: block;
        margin-bottom: 16px;
    }

    .customer-account-login
    .block-customer-login
    .form-login
    .field > .label {
        display: block;
        margin-bottom: 6px !important;
        text-align: left;
    }

    .customer-account-login
    .block-customer-login
    .form-login
    .field.choice {
        display: flex;
        margin: 3px 0 20px;
    }

    .customer-account-login
    .block-customer-login
    .actions-toolbar {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
        margin: 0 !important;
    }

    .customer-account-login
    .block-customer-login
    .actions-toolbar .action.primary {
        width: 100%;
    }

    .customer-account-login
    .block-customer-login
    .actions-toolbar .secondary {
        text-align: center;
    }

    .customer-account-login
    .block-customer-login
    .fieldset:after {
        margin-left: 0;
        margin-top: 16px;
    }

    .customer-account-login
    .block-new-customer
    .actions-toolbar .action.primary {
        width: 100%;
    }
}


/* ==========================================================
   CUSTOMER LOGIN - REGISTERED CUSTOMER ALIGNMENT FIX
   ========================================================== */

@media (min-width: 768px) {

    .customer-account-login
    .block-customer-login
    .form-login
    .fieldset > .field:not(.choice) {
        display: grid !important;
        grid-template-columns: 105px minmax(0, 1fr) !important;
        column-gap: 16px !important;
        align-items: center !important;
        width: 100% !important;
        margin: 0 0 17px !important;
    }

    .customer-account-login
    .block-customer-login
    .form-login
    .fieldset > .field:not(.choice) > .label {
        grid-column: 1 !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        text-align: right !important;
    }

    .customer-account-login
    .block-customer-login
    .form-login
    .fieldset > .field:not(.choice) > .control {
        grid-column: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
    }

    .customer-account-login
    .block-customer-login
    .form-login
    .fieldset > .field:not(.choice) > .control input.input-text {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        height: 46px !important;
        box-sizing: border-box !important;
    }

    /* Align Show Password beneath the inputs */
    .customer-account-login
    .block-customer-login
    .form-login
    .field.choice {
        width: auto !important;
        margin: 2px 0 22px 121px !important;
        float: none !important;
    }

    /* Align action row with input column */
    .customer-account-login
    .block-customer-login
    .actions-toolbar {
        margin-left: 121px !important;
    }
}


/* ==========================================================
   CUSTOMER LOGIN - LOWER CARDS FINAL HEIGHT / SPACING
   ========================================================== */

@media (min-width: 768px) {

    /* Do not stretch the two lower cards to equal oversized height */
    .customer-account-login .login-container {
        align-items: start !important;
    }

    .customer-account-login .login-container .block-new-customer,
    .customer-account-login .login-container .block-customer-login {
        height: auto !important;
        min-height: 0 !important;
        align-self: start !important;
    }

    /* Balanced internal spacing */
    .customer-account-login .login-container .block-new-customer,
    .customer-account-login .login-container .block-customer-login {
        padding-bottom: 30px !important;
    }

    /* Registered customer form */
    .customer-account-login
    .block-customer-login
    .block-content {
        padding-bottom: 0 !important;
    }

    /* Reduce excessive space around form introduction */
    .customer-account-login
    .block-customer-login
    .fieldset.login {
        margin-bottom: 0 !important;
    }

    /* New customer CTA spacing */
    .customer-account-login
    .block-new-customer
    .actions-toolbar {
        margin-top: 22px !important;
    }
}


/* ==========================================================
   CUSTOMER LOGIN - MOBILE FINAL SPACING POLISH
   Desktop intentionally untouched
   ========================================================== */
@media (max-width: 620px) {

    /* Reduce excessive space between header/search and page title */
    .customer-account-login .page-main {
        padding-top: 34px !important;
    }

    /* Tighter title spacing */
    .customer-account-login .page-title-wrapper {
        margin-bottom: 28px !important;
    }

    .customer-account-login .page-title-wrapper .page-title {
        margin-bottom: 0 !important;
    }

    /* Slightly refine OTP heading hierarchy */
    .customer-account-login .mobile-otp-login__text h2 {
        font-size: 24px !important;
        line-height: 1.12 !important;
        margin-bottom: 5px !important;
    }

    /* Keep supporting text compact */
    .customer-account-login .mobile-otp-login__text p {
        margin-bottom: 18px !important;
    }
}


/* ==========================================================
   CUSTOMER ACCOUNT DASHBOARD - DESKTOP
   ========================================================== */

.customer-account-index .page-title-wrapper {
    margin: 0 0 34px;
}

.customer-account-index .page-title-wrapper .page-title {
    margin: 0;
    color: var(--indigo);
    font-size: clamp(46px, 4.5vw, 64px);
    line-height: 1;
}

/* Main dashboard sections */
.customer-account-index .column.main > .block {
    margin: 0 0 30px;
    padding: 28px 30px 30px;
    border: 1px solid var(--line);
    border-top: 6px solid var(--indigo);
    background: var(--ivory);
}

/* Section headings */
.customer-account-index .column.main > .block > .block-title {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 24px;
    padding: 0 0 14px;
    border-bottom: 1px solid var(--line);
}

.customer-account-index .column.main > .block > .block-title strong {
    color: var(--indigo);
    font: 700 27px/1.15 Georgia, serif;
}

.customer-account-index .column.main > .block > .block-title .action {
    margin-left: auto;
    font-size: 13px;
    font-weight: 700;
}

/* Account information + newsletter */
.customer-account-index .block-dashboard-info .block-content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
}

.customer-account-index .block-dashboard-info .box {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 175px;
    margin: 0;
    padding: 22px 24px;
    border: 1px solid var(--line);
    background: #fff;
}

.customer-account-index .block-dashboard-info .box-title {
    display: block;
    margin: 0 0 13px;
    padding: 0 0 10px;
    border-bottom: 1px solid var(--line);
    color: #222;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 800;
}

.customer-account-index .block-dashboard-info .box-content {
    flex: 1;
    color: #333;
    font-size: 14px;
    line-height: 1.65;
}

.customer-account-index .block-dashboard-info .box-content p {
    margin: 0;
}

.customer-account-index .block-dashboard-info .box-actions {
    margin-top: 16px;
}

.customer-account-index .block-dashboard-info .box-actions .action {
    display: inline-block;
    margin-right: 16px;
    font-size: 13px;
    font-weight: 700;
}

/* Address book */
.customer-account-index .block-dashboard-addresses .block-content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
}

.customer-account-index .block-dashboard-addresses .box {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 245px;
    margin: 0;
    padding: 22px 24px;
    border: 1px solid var(--line);
    background: #fff;
}

.customer-account-index .block-dashboard-addresses .box-title {
    display: block;
    margin: 0 0 13px;
    padding: 0 0 10px;
    border-bottom: 1px solid var(--line);
    color: #222;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 800;
}

.customer-account-index .block-dashboard-addresses .box-content {
    flex: 1;
}

.customer-account-index .block-dashboard-addresses address {
    margin: 0;
    color: #333;
    font-size: 14px;
    line-height: 1.65;
    font-style: normal;
}

.customer-account-index .block-dashboard-addresses .box-actions {
    margin-top: 17px;
}

.customer-account-index .block-dashboard-addresses .box-actions .action {
    font-size: 13px;
    font-weight: 700;
}

/* Recent orders */
.customer-account-index .block-dashboard-orders .table-wrapper {
    margin: 0;
    overflow-x: auto;
}

.customer-account-index .block-dashboard-orders table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    background: #fff;
}

.customer-account-index .block-dashboard-orders thead {
    background: rgba(18, 48, 97, .055);
}

.customer-account-index .block-dashboard-orders th {
    padding: 14px 13px;
    border-bottom: 2px solid var(--indigo);
    color: var(--indigo);
    font-size: 12px;
    line-height: 1.25;
    font-weight: 800;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: .035em;
}

.customer-account-index .block-dashboard-orders td {
    padding: 15px 13px;
    border-bottom: 1px solid var(--line);
    color: #292929;
    font-size: 13px;
    line-height: 1.4;
    vertical-align: middle;
}

.customer-account-index .block-dashboard-orders tbody tr:last-child td {
    border-bottom: 0;
}

.customer-account-index .block-dashboard-orders tbody tr:hover {
    background: rgba(18, 48, 97, .025);
}

.customer-account-index .block-dashboard-orders td.total {
    white-space: nowrap;
    font-weight: 700;
}

.customer-account-index .block-dashboard-orders td.status {
    font-weight: 700;
}

.customer-account-index .block-dashboard-orders td.actions {
    white-space: nowrap;
}

.customer-account-index .block-dashboard-orders td.actions .action {
    display: inline-block;
    margin-right: 10px;
    font-size: 12px;
    font-weight: 700;
}

/* Account navigation refinement */
.customer-account-index .block-collapsible-nav {
    border-top: 6px solid var(--indigo) !important;
}

.customer-account-index .block-collapsible-nav .item {
    margin: 0;
}

.customer-account-index .block-collapsible-nav .item a,
.customer-account-index .block-collapsible-nav .item > strong {
    display: block;
    padding: 13px 18px !important;
    border-bottom: 1px solid var(--line);
    font-size: 14px;
    line-height: 1.35;
}

.customer-account-index .block-collapsible-nav .item.current > strong {
    position: relative;
    background: rgba(18, 48, 97, .055);
    color: var(--indigo);
    font-weight: 800;
}

.customer-account-index .block-collapsible-nav .item.current > strong:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 4px;
    background: #e44b18;
}

/* Sidebar supporting blocks */
.customer-account-index .sidebar-additional .block-title {
    margin-bottom: 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--line);
}

.customer-account-index .sidebar-additional .block-title strong {
    color: var(--indigo);
    font: 700 20px/1.2 Georgia, serif;
}

/* ==========================================================
   CUSTOMER DASHBOARD - REMOVE MAGENTO CLEARFIX GRID ITEMS
   ========================================================== */

.customer-account-index .block-dashboard-info .block-content::before,
.customer-account-index .block-dashboard-info .block-content::after,
.customer-account-index .block-dashboard-addresses .block-content::before,
.customer-account-index .block-dashboard-addresses .block-content::after {
    content: none !important;
    display: none !important;
}


/* ==========================================================
   CUSTOMER DASHBOARD - FINAL CARD WIDTH REFINEMENT
   ========================================================== */

.customer-account-index .block-dashboard-info .block-content,
.customer-account-index .block-dashboard-addresses .block-content {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
    align-items: stretch;
}

.customer-account-index .block-dashboard-info .block-content > .box,
.customer-account-index .block-dashboard-addresses .block-content > .box {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    justify-self: stretch !important;
}

/* Keep both cards in each section visually balanced */
.customer-account-index .block-dashboard-info .box {
    min-height: 175px;
}

.customer-account-index .block-dashboard-addresses .box {
    min-height: 245px;
}


/* ==========================================================
   CUSTOMER ACCOUNT DASHBOARD - MOBILE
   ========================================================== */

@media (max-width: 767px) {

    /* Main account content */
    .customer-account-index .page-main {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .customer-account-index .page-title-wrapper {
        margin-bottom: 24px !important;
    }

    .customer-account-index .page-title-wrapper .page-title {
        font-size: 38px !important;
        line-height: 1.05 !important;
    }

    /* Dashboard sections */
    .customer-account-index .column.main > .block {
        margin-bottom: 22px !important;
        padding: 20px 16px 22px !important;
    }

    .customer-account-index .column.main > .block > .block-title {
        display: flex !important;
        flex-wrap: wrap;
        gap: 8px 14px;
        margin-bottom: 18px !important;
        padding-bottom: 12px !important;
    }

    .customer-account-index .column.main > .block > .block-title strong {
        font-size: 22px !important;
    }

    /* Account + address cards become one column */
    .customer-account-index .block-dashboard-info .block-content,
    .customer-account-index .block-dashboard-addresses .block-content {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 14px !important;
        width: 100% !important;
    }

    .customer-account-index .block-dashboard-info .block-content > .box,
    .customer-account-index .block-dashboard-addresses .block-content > .box {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 18px !important;
        box-sizing: border-box !important;
    }

    .customer-account-index .block-dashboard-info .box-title,
    .customer-account-index .block-dashboard-addresses .box-title {
        margin-bottom: 11px !important;
        padding-bottom: 9px !important;
        font-size: 14px !important;
    }

    .customer-account-index .block-dashboard-info .box-content,
    .customer-account-index .block-dashboard-addresses .box-content,
    .customer-account-index .block-dashboard-addresses address {
        font-size: 14px !important;
        line-height: 1.55 !important;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .customer-account-index .block-dashboard-info .box-actions,
    .customer-account-index .block-dashboard-addresses .box-actions {
        margin-top: 14px !important;
    }

    /* Recent orders: horizontal scroll instead of crushing columns */
    .customer-account-index .block-dashboard-orders .table-wrapper {
        width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .customer-account-index .block-dashboard-orders table {
        min-width: 680px !important;
    }

    .customer-account-index .block-dashboard-orders th,
    .customer-account-index .block-dashboard-orders td {
        white-space: nowrap;
    }

    /* Supporting sidebar blocks */
    .customer-account-index .sidebar-additional {
        margin-top: 24px !important;
    }

    .customer-account-index .sidebar-additional .block {
        margin-bottom: 18px !important;
    }
}


/* ==========================================================
   MY ACCOUNT - MOBILE SIDEBAR PRODUCT TYPOGRAPHY
   ========================================================== */

@media (max-width: 767px) {

    /* Recently Ordered */
    .account .sidebar .block-reorder .product-item-name,
    .account .sidebar .block-reorder .product-item-name a {
        font-family: "Source Sans 3", sans-serif !important;
        font-size: 14px !important;
        line-height: 1.35 !important;
        font-weight: 600 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
    }

    /* My Wish List */
    .account .sidebar .block-wishlist .product-item-name,
    .account .sidebar .block-wishlist .product-item-name a {
        font-family: "Source Sans 3", sans-serif !important;
        font-size: 14px !important;
        line-height: 1.35 !important;
        font-weight: 600 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
    }
}


/* ==========================================================
   MY ORDERS - DESKTOP
   ========================================================== */

@media (min-width: 768px) {

    .sales-order-history .column.main {
        min-width: 0;
    }

    .sales-order-history .column.main .orders-history {
        width: 100% !important;
        margin: 0;
    }

    .sales-order-history .table-wrapper.orders-history {
        width: 100% !important;
        overflow-x: auto;
    }

    .sales-order-history .table-order-items {
        width: 100% !important;
        table-layout: auto;
        border-collapse: collapse;
        background: #fff;
    }

    .sales-order-history .table-order-items thead {
        background: rgba(18, 48, 97, .055);
    }

    .sales-order-history .table-order-items th {
        padding: 14px 16px !important;
        border-bottom: 2px solid #123061;
        color: #123061;
        font-size: 12px;
        line-height: 1.3;
        font-weight: 800;
        text-align: left;
        white-space: nowrap;
    }

    .sales-order-history .table-order-items td {
        padding: 15px 16px !important;
        border-bottom: 1px solid #e5ddd0;
        color: #292929;
        font-size: 13px;
        line-height: 1.4;
        vertical-align: middle;
    }

    .sales-order-history .table-order-items tbody tr:hover {
        background: rgba(18, 48, 97, .025);
    }

    .sales-order-history .table-order-items td.col.total {
        font-weight: 700;
        white-space: nowrap;
    }

    .sales-order-history .table-order-items td.col.status {
        font-weight: 700;
        white-space: nowrap;
    }

    .sales-order-history .table-order-items td.col.actions {
        white-space: nowrap;
    }

    .sales-order-history .table-order-items td.col.actions .action {
        display: inline-block;
        margin-right: 12px;
        font-size: 12px;
        font-weight: 700;
    }

    /* Pager */
    .sales-order-history .toolbar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 18px;
        margin: 22px 0 0;
    }

    .sales-order-history .toolbar-amount {
        margin: 0;
        font-size: 13px;
    }

    .sales-order-history .pages {
        margin: 0;
    }

    .sales-order-history .limiter {
        margin: 0;
    }
}


/* ==========================================================
   MY ORDERS - FINAL DESKTOP TYPOGRAPHY
   ========================================================== */

@media (min-width: 768px) {

    /* Slightly improve order table readability */
    .sales-order-history .table-order-items td {
        font-size: 14px !important;
        line-height: 1.45 !important;
    }

    /* Recently Ordered product names */
    .sales-order-history .sidebar .block-reorder .product-item-name,
    .sales-order-history .sidebar .block-reorder .product-item-name a {
        font-family: "Source Sans 3", sans-serif !important;
        font-size: 14px !important;
        line-height: 1.35 !important;
        font-weight: 600 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
    }

    /* Wishlist product names */
    .sales-order-history .sidebar .block-wishlist .product-item-name,
    .sales-order-history .sidebar .block-wishlist .product-item-name a {
        font-family: "Source Sans 3", sans-serif !important;
        font-size: 14px !important;
        line-height: 1.35 !important;
        font-weight: 600 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
    }
}


/* ==========================================================
   MY ORDERS - MOBILE CARDS
   ========================================================== */
@media (max-width: 767px) {

    /* Orders page breathing room */
    .sales-order-history .page-title-wrapper {
        margin-bottom: 26px !important;
    }

    /* Remove desktop table appearance */
    .sales-order-history .table-wrapper.orders-history {
        margin: 0 !important;
        overflow: visible !important;
    }

    .sales-order-history .table-order-items {
        display: block !important;
        width: 100% !important;
        background: transparent !important;
    }

    .sales-order-history .table-order-items thead {
        display: none !important;
    }

    .sales-order-history .table-order-items tbody {
        display: block !important;
    }

    /* Each order becomes a card */
    .sales-order-history .table-order-items tbody tr {
        display: block !important;
        margin: 0 0 16px !important;
        padding: 18px 18px 16px !important;
        border: 1px solid #ded4c5 !important;
        border-top: 4px solid #123061 !important;
        background: #fff !important;
        box-sizing: border-box;
    }

    /* Individual order fields */
    .sales-order-history .table-order-items tbody td {
        display: flex !important;
        align-items: baseline;
        justify-content: space-between;
        gap: 16px;
        width: 100% !important;
        padding: 8px 0 !important;
        border: 0 !important;
        border-bottom: 1px solid #eee6da !important;
        color: #292929;
        font-size: 13px !important;
        line-height: 1.4 !important;
        text-align: right !important;
        box-sizing: border-box;
    }

    /* Magento mobile field labels */
    .sales-order-history .table-order-items tbody td:before {
        flex: 0 0 105px;
        margin: 0 !important;
        padding: 0 !important;
        color: #123061 !important;
        font-size: 12px !important;
        line-height: 1.4 !important;
        font-weight: 800 !important;
        text-align: left !important;
        text-transform: uppercase;
    }

    /* Order number gets visual emphasis */
    .sales-order-history .table-order-items tbody td.col.id {
        padding-top: 2px !important;
        font-weight: 800 !important;
    }

    /* Price */
    .sales-order-history .table-order-items tbody td.col.total {
        font-weight: 800 !important;
    }

    /* Status */
    .sales-order-history .table-order-items tbody td.col.status {
        font-weight: 700 !important;
    }

    /* Actions become footer of card */
    .sales-order-history .table-order-items tbody td.col.actions {
        justify-content: flex-end !important;
        padding: 14px 0 0 !important;
        border-bottom: 0 !important;
        text-align: right !important;
    }

    .sales-order-history .table-order-items tbody td.col.actions:before {
        display: none !important;
    }

    .sales-order-history .table-order-items tbody td.col.actions .action {
        display: inline-block !important;
        margin: 0 0 0 14px !important;
        color: #006bb4 !important;
        font-size: 12px !important;
        line-height: 1.4 !important;
        font-weight: 800 !important;
        text-transform: uppercase;
    }

    /* Pager */
    .sales-order-history .toolbar {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px;
        margin: 22px 0 8px !important;
        text-align: center;
    }

    .sales-order-history .toolbar-amount {
        margin: 0 !important;
        font-size: 12px !important;
    }

    .sales-order-history .limiter {
        margin: 0 !important;
    }

    .sales-order-history .pages {
        margin: 0 !important;
    }
}


/* ==========================================================
   ORDER DETAIL PAGE
   ========================================================== */

/* Main order content panels */
.sales-order-view .order-details-items.ordered,
.sales-order-view .block-order-details-view {
    margin: 0 0 28px;
    padding: 26px 28px 28px;
    border: 1px solid var(--line);
    border-top: 5px solid var(--indigo);
    background: var(--ivory);
    box-sizing: border-box;
}

/* Items Ordered / Order Information headings */
.sales-order-view .order-details-items .order-title,
.sales-order-view .block-order-details-view > .block-title {
    margin: 0 0 22px;
    padding: 0 0 13px;
    border-bottom: 1px solid var(--line);
}

.sales-order-view .order-details-items .order-title strong,
.sales-order-view .block-order-details-view > .block-title strong {
    color: var(--indigo);
    font: 700 24px/1.2 Georgia, serif;
}

/* ==========================================================
   DESKTOP - ORDER ITEMS
   ========================================================== */

.sales-order-view .table-wrapper.order-items {
    margin: 0;
    overflow-x: auto;
}

.sales-order-view .table-order-items {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    background: #fff;
}

.sales-order-view .table-order-items thead {
    background: rgba(18, 48, 97, .055);
}

.sales-order-view .table-order-items thead th {
    padding: 13px 14px;
    border-bottom: 2px solid var(--indigo);
    color: var(--indigo);
    font-size: 12px;
    line-height: 1.3;
    font-weight: 800;
    text-transform: uppercase;
}

.sales-order-view .table-order-items tbody td {
    padding: 16px 14px;
    border-bottom: 1px solid #ebe4d8;
    color: #292929;
    font-size: 13px;
    line-height: 1.5;
    vertical-align: top;
}

.sales-order-view .table-order-items tbody .product-item-name {
    color: var(--indigo);
    font-size: 14px;
    line-height: 1.35;
    font-weight: 800;
}

.sales-order-view .table-order-items td.price,
.sales-order-view .table-order-items td.subtotal {
    font-weight: 700;
    white-space: nowrap;
}

/* Totals */
.sales-order-view .table-order-items tfoot th,
.sales-order-view .table-order-items tfoot td {
    padding: 8px 14px;
    border: 0;
    font-size: 13px;
}

.sales-order-view .table-order-items tfoot tr:first-of-type th,
.sales-order-view .table-order-items tfoot tr:first-of-type td {
    padding-top: 18px;
}

.sales-order-view .table-order-items tfoot .grand_total th,
.sales-order-view .table-order-items tfoot .grand_total td,
.sales-order-view .table-order-items tfoot .grand-total th,
.sales-order-view .table-order-items tfoot .grand-total td {
    padding-top: 12px;
    color: var(--indigo);
    font-size: 16px;
    font-weight: 800;
}

/* ==========================================================
   DESKTOP - ORDER INFORMATION
   ========================================================== */

.sales-order-view .block-order-details-view .block-content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.sales-order-view .block-order-details-view .box {
    min-width: 0;
    margin: 0;
    padding: 20px 22px;
    border: 1px solid var(--line);
    background: #fff;
    box-sizing: border-box;
}

.sales-order-view .block-order-details-view .box-title {
    display: block;
    margin: 0 0 12px;
    padding: 0 0 9px;
    border-bottom: 1px solid var(--line);
    color: #222;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 800;
}

.sales-order-view .block-order-details-view .box-content,
.sales-order-view .block-order-details-view address {
    margin: 0;
    color: #333;
    font-size: 13px;
    line-height: 1.6;
    font-style: normal;
}

/* Back link */
.sales-order-view .order-details-items .actions-toolbar {
    margin-top: 20px;
}

/* ==========================================================
   MOBILE ORDER DETAIL
   ========================================================== */

@media (max-width: 767px) {

    .sales-order-view .page-title-wrapper {
        margin-bottom: 24px !important;
    }

    .sales-order-view .order-details-items.ordered,
    .sales-order-view .block-order-details-view {
        margin-bottom: 18px !important;
        padding: 18px 14px 20px !important;
        border-top-width: 4px !important;
    }

    .sales-order-view .order-details-items .order-title,
    .sales-order-view .block-order-details-view > .block-title {
        margin-bottom: 16px !important;
        padding-bottom: 11px !important;
    }

    .sales-order-view .order-details-items .order-title strong,
    .sales-order-view .block-order-details-view > .block-title strong {
        font-size: 21px !important;
    }

    /* Remove desktop table presentation */
    .sales-order-view .table-wrapper.order-items {
        overflow: visible !important;
    }

    .sales-order-view .table-order-items {
        display: block !important;
        background: transparent !important;
    }

    .sales-order-view .table-order-items thead {
        display: none !important;
    }

    .sales-order-view .table-order-items tbody {
        display: block !important;
        margin: 0 0 14px !important;
        padding: 15px 15px 12px !important;
        border: 1px solid #ded4c5 !important;
        border-top: 3px solid #123061 !important;
        background: #fff !important;
        box-sizing: border-box;
    }

    .sales-order-view .table-order-items tbody tr {
        display: block !important;
    }

    .sales-order-view .table-order-items tbody td {
        display: flex !important;
        justify-content: space-between;
        align-items: baseline;
        gap: 14px;
        width: 100% !important;
        padding: 7px 0 !important;
        border: 0 !important;
        border-bottom: 1px solid #eee6da !important;
        font-size: 13px !important;
        line-height: 1.4 !important;
        text-align: right !important;
        box-sizing: border-box;
    }

    .sales-order-view .table-order-items tbody td:last-child {
        border-bottom: 0 !important;
    }

    /* Magento generated mobile labels */
    .sales-order-view .table-order-items tbody td:before {
        flex: 0 0 95px;
        margin: 0 !important;
        color: #123061 !important;
        font-size: 11px !important;
        line-height: 1.35 !important;
        font-weight: 800 !important;
        text-align: left !important;
        text-transform: uppercase;
    }

    /* Product name gets card heading treatment */
    .sales-order-view .table-order-items tbody td.col.name {
        display: block !important;
        padding: 2px 0 12px !important;
        text-align: left !important;
    }

    .sales-order-view .table-order-items tbody td.col.name:before {
        display: block !important;
        margin-bottom: 5px !important;
    }

    .sales-order-view .table-order-items tbody .product-item-name {
        display: block;
        font-size: 15px !important;
        line-height: 1.35 !important;
    }

    /* Qty details */
    .sales-order-view .table-order-items tbody td.col.qty {
        align-items: flex-start;
    }

    /* Totals become separate summary card */
    .sales-order-view .table-order-items tfoot {
        display: block !important;
        margin-top: 18px !important;
        padding: 14px 15px !important;
        border: 1px solid #ded4c5 !important;
        background: #fff !important;
        box-sizing: border-box;
    }

    .sales-order-view .table-order-items tfoot tr {
        display: flex !important;
        justify-content: space-between;
        gap: 16px;
        width: 100%;
    }

    .sales-order-view .table-order-items tfoot th,
    .sales-order-view .table-order-items tfoot td {
        display: block !important;
        width: auto !important;
        padding: 6px 0 !important;
        border: 0 !important;
        font-size: 13px !important;
    }

    .sales-order-view .table-order-items tfoot th {
        flex: 1;
        text-align: left !important;
        font-weight: 600;
    }

    .sales-order-view .table-order-items tfoot td {
        flex: 0 0 auto;
        text-align: right !important;
        font-weight: 700;
        white-space: nowrap;
    }

    .sales-order-view .table-order-items tfoot .grand_total,
    .sales-order-view .table-order-items tfoot .grand-total {
        margin-top: 6px;
        padding-top: 7px;
        border-top: 2px solid #123061;
    }

    .sales-order-view .table-order-items tfoot .grand_total th,
    .sales-order-view .table-order-items tfoot .grand_total td,
    .sales-order-view .table-order-items tfoot .grand-total th,
    .sales-order-view .table-order-items tfoot .grand-total td {
        color: #123061 !important;
        font-size: 15px !important;
        font-weight: 800 !important;
    }

    /* Order information cards */
    .sales-order-view .block-order-details-view .block-content {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .sales-order-view .block-order-details-view .box {
        width: 100% !important;
        padding: 16px !important;
    }

    .sales-order-view .block-order-details-view .box-title {
        margin-bottom: 9px !important;
        padding-bottom: 8px !important;
        font-size: 13px !important;
    }

    .sales-order-view .block-order-details-view .box-content,
    .sales-order-view .block-order-details-view address {
        font-size: 13px !important;
        line-height: 1.55 !important;
    }
}


/* ==========================================================
   ORDER DETAIL - REMOVE MAGENTO CLEARFIX GRID ITEMS
   ========================================================== */

.sales-order-view
.block-order-details-view
.block-content::before,

.sales-order-view
.block-order-details-view
.block-content::after {
    content: none !important;
    display: none !important;
}


/* ==========================================================
   ORDER DETAIL - REMOVE MAGENTO CLEARFIX GRID ITEMS
   ========================================================== */

.sales-order-view
.block-order-details-view
.block-content::before,

.sales-order-view
.block-order-details-view
.block-content::after {
    content: none !important;
    display: none !important;
}


/* ==========================================================
   ORDER DETAIL - NORMALIZE ORDER INFORMATION GRID BOXES
   ========================================================== */

.sales-order-view
.block-order-details-view
.block-content > .box {
    float: none !important;
    clear: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    position: static !important;
    box-sizing: border-box !important;
    justify-self: stretch !important;
}


/* ==========================================================
   ORDER DETAIL - INVOICE + REFUND CONSISTENCY
   ========================================================== */

/* Invoice / Refund tables */
.sales-order-view .table-order-items.invoice,
.sales-order-view .table-order-items.creditmemo {
    width: 100% !important;
    margin: 0 !important;
    border-collapse: collapse !important;
    background: #fff !important;
}

.sales-order-view .table-order-items.invoice thead,
.sales-order-view .table-order-items.creditmemo thead {
    background: rgba(23, 44, 91, .055) !important;
}

.sales-order-view .table-order-items.invoice thead th,
.sales-order-view .table-order-items.creditmemo thead th {
    padding: 13px 14px !important;
    border-bottom: 2px solid #172c5b !important;
    color: #172c5b !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    vertical-align: middle;
}

.sales-order-view .table-order-items.invoice tbody td,
.sales-order-view .table-order-items.creditmemo tbody td {
    padding: 15px 14px !important;
    border-bottom: 1px solid #ebe4d8 !important;
    color: #292929 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    vertical-align: top !important;
}

/* Product titles */
.sales-order-view .table-order-items.invoice .product-item-name,
.sales-order-view .table-order-items.creditmemo .product-item-name {
    color: #172c5b !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
}

/* Numeric columns */
.sales-order-view .table-order-items.invoice td.price,
.sales-order-view .table-order-items.invoice td.subtotal,
.sales-order-view .table-order-items.creditmemo td.price,
.sales-order-view .table-order-items.creditmemo td.subtotal {
    font-weight: 700 !important;
    white-space: nowrap;
}

/* Invoice/refund totals */
.sales-order-view .table-order-items.invoice tfoot th,
.sales-order-view .table-order-items.invoice tfoot td,
.sales-order-view .table-order-items.creditmemo tfoot th,
.sales-order-view .table-order-items.creditmemo tfoot td {
    padding: 7px 12px !important;
    border: 0 !important;
    font-size: 13px !important;
}

.sales-order-view .table-order-items.invoice tfoot tr:last-child th,
.sales-order-view .table-order-items.invoice tfoot tr:last-child td,
.sales-order-view .table-order-items.creditmemo tfoot tr:last-child th,
.sales-order-view .table-order-items.creditmemo tfoot tr:last-child td {
    padding-top: 11px !important;
    color: #172c5b !important;
    font-size: 15px !important;
    font-weight: 800 !important;
}

/* Invoice / refund header actions */
.sales-order-view .order-details-items .order-title {
    color: #172c5b;
}

.sales-order-view .order-details-items .order-title .action,
.sales-order-view .order-details-items .actions .action {
    font-size: 12px;
    font-weight: 700;
}

/* ==========================================================
   CUSTOMER ACCOUNT - GLOBAL SIDEBAR PRODUCT TYPOGRAPHY
   ========================================================== */

.account .sidebar .block-reorder .product-item-name,
.account .sidebar .block-reorder .product-item-name a,
.account .sidebar .block-wishlist .product-item-name,
.account .sidebar .block-wishlist .product-item-name a {
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

/* ==========================================================
   MOBILE - INVOICE + REFUND
   ========================================================== */

@media (max-width: 767px) {

    .sales-order-view .table-wrapper.table-order-items.invoice,
    .sales-order-view .table-wrapper.order-items-creditmemo {
        overflow: visible !important;
    }

    .sales-order-view .table-order-items.invoice,
    .sales-order-view .table-order-items.creditmemo {
        display: block !important;
        background: transparent !important;
    }

    .sales-order-view .table-order-items.invoice thead,
    .sales-order-view .table-order-items.creditmemo thead {
        display: none !important;
    }

    .sales-order-view .table-order-items.invoice tbody,
    .sales-order-view .table-order-items.creditmemo tbody {
        display: block !important;
        margin: 0 0 14px !important;
        padding: 14px !important;
        border: 1px solid #ded4c5 !important;
        border-top: 3px solid #172c5b !important;
        background: #fff !important;
        box-sizing: border-box;
    }

    .sales-order-view .table-order-items.invoice tbody tr,
    .sales-order-view .table-order-items.creditmemo tbody tr {
        display: block !important;
    }

    .sales-order-view .table-order-items.invoice tbody td,
    .sales-order-view .table-order-items.creditmemo tbody td {
        display: flex !important;
        justify-content: space-between;
        align-items: baseline;
        gap: 14px;
        width: 100% !important;
        padding: 7px 0 !important;
        border: 0 !important;
        border-bottom: 1px solid #eee6da !important;
        text-align: right !important;
        box-sizing: border-box;
    }

    .sales-order-view .table-order-items.invoice tbody td:before,
    .sales-order-view .table-order-items.creditmemo tbody td:before {
        flex: 0 0 100px;
        color: #172c5b !important;
        font-size: 11px !important;
        line-height: 1.35 !important;
        font-weight: 800 !important;
        text-align: left !important;
        text-transform: uppercase;
    }

    .sales-order-view .table-order-items.invoice tbody td.col.name,
    .sales-order-view .table-order-items.creditmemo tbody td.col.name {
        display: block !important;
        text-align: left !important;
        padding-top: 2px !important;
        padding-bottom: 11px !important;
    }

    .sales-order-view .table-order-items.invoice tbody td.col.name:before,
    .sales-order-view .table-order-items.creditmemo tbody td.col.name:before {
        display: block !important;
        margin-bottom: 5px;
    }

    .sales-order-view .table-order-items.invoice tfoot,
    .sales-order-view .table-order-items.creditmemo tfoot {
        display: block !important;
        margin-top: 16px !important;
        padding: 12px 14px !important;
        border: 1px solid #ded4c5 !important;
        background: #fff !important;
    }

    .sales-order-view .table-order-items.invoice tfoot tr,
    .sales-order-view .table-order-items.creditmemo tfoot tr {
        display: flex !important;
        justify-content: space-between;
        gap: 14px;
    }

    .sales-order-view .table-order-items.invoice tfoot th,
    .sales-order-view .table-order-items.invoice tfoot td,
    .sales-order-view .table-order-items.creditmemo tfoot th,
    .sales-order-view .table-order-items.creditmemo tfoot td {
        display: block !important;
        width: auto !important;
        padding: 6px 0 !important;
    }
}


/* ==========================================================
   ORDER DETAIL PAGE - SHIPMENT TAB
   ========================================================== */

/* Shipment table container */
.sales-order-shipment .table-wrapper.order-items-shipment {
    margin: 18px 0 28px !important;
    border: 1px solid #ddd0b6 !important;
    background: #fff !important;
    overflow: hidden;
}

/* Shipment table */
.sales-order-shipment .table-order-items.shipment {
    width: 100% !important;
    margin: 0 !important;
    border-collapse: collapse !important;
    table-layout: fixed;
}

/* Header */
.sales-order-shipment .table-order-items.shipment thead th {
    padding: 12px 10px !important;
    background: #f3f6f8 !important;
    border: 0 !important;
    border-bottom: 1px solid #d7dce2 !important;
    color: #172c5b !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    vertical-align: middle !important;
}

/* Table cells */
.sales-order-shipment .table-order-items.shipment tbody td {
    padding: 14px 10px !important;
    border: 0 !important;
    border-bottom: 1px solid #e4e4e4 !important;
    color: #251b18 !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    vertical-align: top !important;
}

/* Product names */
.sales-order-shipment .table-order-items.shipment .product-item-name {
    margin: 0 0 4px !important;
    color: #172c5b !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
}

/* Product options: Serving, weight etc. */
.sales-order-shipment .table-order-items.shipment .item-options {
    margin: 5px 0 0 !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

.sales-order-shipment .table-order-items.shipment .item-options dt,
.sales-order-shipment .table-order-items.shipment .item-options dd {
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

/* Shipment / tracking headings and actions */
.sales-order-shipment .order-title,
.sales-order-shipment .order-tracking {
    font-family: "Source Sans 3", sans-serif;
}

.sales-order-shipment .order-title > strong {
    color: #172c5b;
}

/* ==========================================================
   SHIPMENT TAB - MOBILE
   ========================================================== */

@media (max-width: 767px) {

    .sales-order-shipment .table-wrapper.order-items-shipment {
        margin-top: 14px !important;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .sales-order-shipment .table-order-items.shipment {
        table-layout: auto !important;
        min-width: 480px;
    }

    .sales-order-shipment .table-order-items.shipment thead th {
        padding: 9px 8px !important;
        font-size: 10px !important;
    }

    .sales-order-shipment .table-order-items.shipment tbody td {
        padding: 11px 8px !important;
        font-size: 12px !important;
    }

    .sales-order-shipment .table-order-items.shipment .product-item-name {
        font-size: 13px !important;
        line-height: 1.3 !important;
    }

    .sales-order-shipment .table-order-items.shipment .item-options,
    .sales-order-shipment .table-order-items.shipment .item-options dt,
    .sales-order-shipment .table-order-items.shipment .item-options dd {
        font-size: 11px !important;
    }
}


/* ==========================================================
   ORDER SHIPMENT - FINAL CONSOLIDATED OVERRIDE
   ========================================================== */

/* Shipment actions */
.sales-order-shipment .order-details-items .actions-toolbar,
.sales-order-shipment .order-shipment .actions-toolbar,
.sales-order-shipment .block-order-details-view ~ .actions-toolbar {
    margin-bottom: 16px !important;
}

/* Shipment title/actions */
.sales-order-shipment .order-title {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 16px;
    margin: 0 0 14px !important;
    padding: 0 0 10px !important;
    border-bottom: 1px solid #ddcdb6 !important;
}

.sales-order-shipment .order-title > strong {
    color: #172c5b !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 800 !important;
}

.sales-order-shipment .order-title .action {
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

/* Tracking row */
.sales-order-shipment .order-tracking {
    display: flex !important;
    align-items: baseline;
    gap: 10px;
    margin: 0 0 18px !important;
    padding: 10px 12px !important;
    border: 1px solid #e2d8c8 !important;
    background: #fff !important;
}

.sales-order-shipment .order-tracking dt,
.sales-order-shipment .order-tracking dd {
    margin: 0 !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}

.sales-order-shipment .order-tracking dt {
    color: #172c5b !important;
    font-weight: 800 !important;
}

/* Shipment table wrapper */
.sales-order-shipment .table-wrapper.order-items-shipment {
    width: 100% !important;
    margin: 0 0 26px !important;
    border: 1px solid #ddcdb6 !important;
    background: #fff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Shipment table */
.sales-order-shipment table.table-order-items.shipment {
    width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
    background: #fff !important;
}

.sales-order-shipment table.table-order-items.shipment thead {
    display: table-header-group !important;
    background: rgba(23, 44, 91, .055) !important;
}

.sales-order-shipment table.table-order-items.shipment thead th {
    padding: 13px 14px !important;
    border: 0 !important;
    border-bottom: 2px solid #172c5b !important;
    background: rgba(23, 44, 91, .055) !important;
    color: #172c5b !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    text-align: left !important;
}

/* Set sensible shipment column widths */
.sales-order-shipment table.table-order-items.shipment th.col.name,
.sales-order-shipment table.table-order-items.shipment td.col.name {
    width: 58% !important;
}

.sales-order-shipment table.table-order-items.shipment th.col.sku,
.sales-order-shipment table.table-order-items.shipment td.col.sku {
    width: 27% !important;
}

.sales-order-shipment table.table-order-items.shipment th.col.qty,
.sales-order-shipment table.table-order-items.shipment td.col.qty {
    width: 15% !important;
    text-align: center !important;
}

/* Shipment rows */
.sales-order-shipment table.table-order-items.shipment tbody {
    display: table-row-group !important;
}

.sales-order-shipment table.table-order-items.shipment tbody tr {
    display: table-row !important;
}

.sales-order-shipment table.table-order-items.shipment tbody td {
    display: table-cell !important;
    width: auto !important;
    padding: 15px 14px !important;
    border: 0 !important;
    border-bottom: 1px solid #ebe4d8 !important;
    background: #fff !important;
    color: #292929 !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    vertical-align: top !important;
}

/* Strongly override old Georgia product titles */
.sales-order-shipment
table.table-order-items.shipment
.product.name.product-item-name,
.sales-order-shipment
table.table-order-items.shipment
.product-item-name {
    display: block !important;
    margin: 0 0 5px !important;
    color: #172c5b !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

/* Shipment product options */
.sales-order-shipment
table.table-order-items.shipment
.item.options {
    margin: 5px 0 0 !important;
}

.sales-order-shipment
table.table-order-items.shipment
.item.options dt,
.sales-order-shipment
table.table-order-items.shipment
.item.options dd {
    display: inline !important;
    margin: 0 !important;
    color: #444 !important;
    font-family: "Source Sans 3", sans-serif !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
}

.sales-order-shipment
table.table-order-items.shipment
.item.options dt {
    font-weight: 700 !important;
}

.sales-order-shipment
table.table-order-items.shipment
.item.options dd:after {
    content: "";
    display: block;
}

/* ==========================================================
   SHIPMENT MOBILE - CARD PRESENTATION
   ========================================================== */
@media (max-width: 767px) {

    .sales-order-shipment .order-title {
        align-items: flex-start;
    }

    .sales-order-shipment .order-tracking {
        display: block !important;
    }

    .sales-order-shipment .order-tracking dt {
        margin-bottom: 4px !important;
    }

    .sales-order-shipment .table-wrapper.order-items-shipment {
        border: 0 !important;
        background: transparent !important;
        overflow: visible !important;
    }

    .sales-order-shipment table.table-order-items.shipment {
        display: block !important;
        background: transparent !important;
    }

    .sales-order-shipment table.table-order-items.shipment thead {
        display: none !important;
    }

    .sales-order-shipment table.table-order-items.shipment tbody {
        display: block !important;
        margin: 0 0 14px !important;
        padding: 14px !important;
        border: 1px solid #ded4c5 !important;
        border-top: 3px solid #172c5b !important;
        background: #fff !important;
        box-sizing: border-box !important;
    }

    .sales-order-shipment table.table-order-items.shipment tbody tr {
        display: block !important;
    }

    .sales-order-shipment table.table-order-items.shipment tbody td {
        display: flex !important;
        justify-content: space-between;
        align-items: baseline;
        gap: 14px;
        width: 100% !important;
        padding: 7px 0 !important;
        border: 0 !important;
        border-bottom: 1px solid #eee6da !important;
        text-align: right !important;
        box-sizing: border-box !important;
    }

    .sales-order-shipment table.table-order-items.shipment tbody td:last-child {
        border-bottom: 0 !important;
    }

    .sales-order-shipment table.table-order-items.shipment tbody td:before {
        flex: 0 0 100px;
        color: #172c5b !important;
        font-family: "Source Sans 3", sans-serif !important;
        font-size: 11px !important;
        line-height: 1.35 !important;
        font-weight: 800 !important;
        text-align: left !important;
        text-transform: uppercase;
    }

    .sales-order-shipment table.table-order-items.shipment tbody td.col.name {
        display: block !important;
        padding-bottom: 11px !important;
        text-align: left !important;
    }

    .sales-order-shipment table.table-order-items.shipment tbody td.col.name:before {
        display: block !important;
        margin-bottom: 5px;
    }
}


/* Keep Magento's offset mobile drawer inside the viewport. */
@media (max-width: 767px) {
    .checkout-index-index .modal-custom.opc-sidebar.opc-summary-wrapper {
        width: auto;
        margin-top: 0;
    }
}

/* Source Sans 3 by Adobe, SIL OFL 1.1; self-hosted variable fonts. */
@font-face {
    font-family: "Source Sans 3";
    src: url("../fonts/source-sans-3/upright.woff2") format("woff2");
    font-style: normal;
    font-weight: 200 900;
    font-display: swap;
}
@font-face {
    font-family: "Source Sans 3";
    src: url("../fonts/source-sans-3/italic.woff2") format("woff2");
    font-style: italic;
    font-weight: 200 900;
    font-display: swap;
}
body, body input, body select, body textarea, body button,
.action, .navigation, .breadcrumbs, .toolbar,
.modal-content, .block.newsletter input,
.product.attribute.description, .product.attribute.overview {
    font-family: "Source Sans 3", sans-serif;
}
/* Pasted legacy CMS/product formatting must not request unavailable fonts. */
.cms-page-view .column.main [style*="font-family"],
.catalog-product-view .product.attribute [style*="font-family"],
.catalog-product-view .product.attribute font {
    font-family: "Source Sans 3", sans-serif !important;
}
/* Old policy markup references font names belonging to the retired theme. */
.cms-page-view .column.main .content-heading,
.cms-page-view .column.main .std {
    font-family: "Source Sans 3", sans-serif;
}
.cms-page-view .column.main .policy_contnt p,
.cms-page-view .column.main .policy_contnt h6,
.cms-page-view .column.main .policy_contnt li,
.cms-page-view #mc_embed_signup,
.cms-page-view #mc_embed_signup input {
    font-family: "Source Sans 3", sans-serif !important;
}
.cms-page-view .column.main .policy_contnt .title h2 {
    font-family: Georgia, "Times New Roman", serif;
}
/* Override component-level form shorthands without touching icon pseudo-elements. */
body input, body select, body textarea, body button {font-family:"Source Sans 3",sans-serif!important}

/* Product purchase area only; descriptions, recommendations and footer retain their styling. */
body.catalog-product-view .page-title-wrapper.product{padding:20px 0 0;margin:0 0 28px;text-align:left}
body.catalog-product-view .page-title-wrapper.product .page-title{font-size:clamp(32px,4vw,48px);line-height:1.15;margin:0;letter-spacing:-.025em}
body.catalog-product-view .product.media{padding:20px;box-sizing:border-box;margin-bottom:42px}
body.catalog-product-view .product-info-main{box-sizing:border-box;padding:26px 30px;background:rgba(255,255,255,.55);border:1px solid #e5d9c3;margin-bottom:42px}
body.catalog-product-view .product-info-main .product-info-stock-sku{display:flex;flex-wrap:wrap;gap:8px 16px;float:none;text-align:left;padding:0;margin:0 0 10px}
body.catalog-product-view .product-info-main .stock.available{color:#35633e;font-size:13px;letter-spacing:.04em}
body.catalog-product-view .product-info-main .product.attribute.sku{font-size:12px;color:#777}
body.catalog-product-view .product-info-main .product-reviews-summary{margin:0 0 18px}
body.catalog-product-view .product-info-main .product-info-price{display:block;width:100%!important;border:0;margin:0;padding:0 0 20px;border-bottom:1px solid #e5d9c3}
body.catalog-product-view .product-info-main .price-box{padding:0;display:block}
body.catalog-product-view .product-info-main .price-box .price{font-size:30px;line-height:1.2}
body.catalog-product-view .product-info-main .price-label{font-size:13px}
body.catalog-product-view .product-info-main .product-add-form{padding:20px 0 0;margin:0}
body.catalog-product-view .product-info-main .swatch-attribute-label{font-size:15px;font-weight:600}
body.catalog-product-view .product-info-main .swatch-option.text{min-width:62px;min-height:44px;height:auto;line-height:24px;padding:9px 12px;box-sizing:border-box;font-size:14px;margin:0 10px 10px 0}
body.catalog-product-view .product-info-main .swatch-attribute-options{margin:12px 0 18px}
body.catalog-product-view .product-info-main .box-tocart{margin:0 0 16px}
body.catalog-product-view .product-info-main .box-tocart .fieldset{display:flex;align-items:flex-end;gap:14px;margin:0;flex-wrap:wrap}
body.catalog-product-view .product-info-main .box-tocart .field.qty{margin:0}
body.catalog-product-view .product-info-main .box-tocart .actions{padding:0;flex:1;min-width:150px}
body.catalog-product-view .product-info-main .box-tocart .input-text.qty{height:48px;width:66px}
body.catalog-product-view .product-info-main .box-tocart .action.tocart{width:100%;min-height:48px;margin:0;padding:12px 18px}
body.catalog-product-view .product-info-main .product-social-links{padding:16px 0;margin:0;border-top:1px solid #e5d9c3;border-bottom:0}
body.catalog-product-view .product-info-main .product-social-links a{font-size:13px;line-height:1.7}
body.catalog-product-view .product-info-main .prices-tier{background:#f4eddf;padding:14px 18px;margin:8px 0 0;font-size:14px;line-height:1.8}
body.catalog-product-view .product.media .fotorama:not(.fotorama--fullscreen) .fotorama__stage{height:450px!important;max-width:100%}
body.catalog-product-view .product.media .fotorama:not(.fotorama--fullscreen) .fotorama__stage__frame .fotorama__img{height:100%!important;width:100%!important;max-height:100%;object-fit:contain;top:0!important;left:0!important;transform:none!important}
@media(max-width:767px){
body.catalog-product-view .page-title-wrapper.product{padding-top:10px;margin-bottom:20px}
body.catalog-product-view .product-info-main{padding:22px 18px;width:100%;margin-bottom:28px}
body.catalog-product-view .product.media{padding:12px;margin-bottom:24px;width:100%}
body.catalog-product-view .product.media .fotorama:not(.fotorama--fullscreen) .fotorama__stage{height:340px!important}
}
body.catalog-product-view .product.media .fotorama:not(.fotorama--fullscreen) .fotorama__stage__shaft{max-width:100%}
body.catalog-product-view .product-info-main .price-box .prices-tier .price{font-size:14px;line-height:1.8}

/* Keep the native cart success message and its cart link within the viewport. */
.page.messages .message-success.bc-cart-notice {
    position: fixed;
    right: 24px;
    bottom: 28px;
    left: auto;
    z-index: 1000;
    box-sizing: border-box;
    width: 420px;
    max-width: calc(100vw - 32px);
    max-height: 45vh;
    overflow: auto;
    margin: 0;
    padding: 20px 48px 20px 44px;
    border: 1px solid #b6d5b6;
    border-radius: 8px;
    background: #f1f8ef;
    color: #235323;
    box-shadow: 0 6px 24px rgba(0,0,0,.18);
    font-size: 16px;
    line-height: 1.5;
}
.bc-cart-notice .bc-cart-notice-close {
    position: absolute;
    right: 6px;
    top: 6px;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    box-shadow: none;
    background: transparent;
    color: #235323;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
}
.bc-cart-notice-close:focus-visible { outline: 2px solid #19315d; }
@media (max-width: 767px) {
    .page.messages .message-success.bc-cart-notice {
        right: 16px;
        bottom: max(20px, env(safe-area-inset-bottom));
    }
}
