/* Narrow image correction over the original gift-build stylesheet. */
.fad-accurate-image{display:block;width:100%;height:100%;min-width:0;overflow:hidden;background:#fff;position:relative;aspect-ratio:1}
.fad-product-grid{display:grid;grid-template-columns:1fr;width:100%;height:100%;align-items:center;min-width:0;background:#fff}
.fad-product-grid.fad-pair{grid-template-columns:1fr 1fr}
.fad-mask-plane{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;padding:15px;background:#fff}
.fad-accurate-image .fad-mask-plane img{display:block;position:static!important;inset:auto!important;width:100%!important;height:auto!important;min-height:0!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;aspect-ratio:1!important;transform:none!important;filter:none!important;margin:0!important}
.fad-soft-crop{position:relative;width:100%;aspect-ratio:900/575;flex-shrink:0;overflow:hidden}
.fad-accurate-image .fad-soft-crop img{position:absolute!important;max-width:none!important;max-height:none!important;width:166.6666667%!important;height:auto!important;left:-15.5555556%!important;top:-41.7391304%!important;right:auto!important;bottom:auto!important;object-fit:contain!important}
.hero-photo.fad-accurate-image{position:absolute;inset:0;width:100%;height:100%;opacity:1;aspect-ratio:auto;background:var(--bg)}
.hero-photo.fad-accurate-image>.fad-product-grid{position:absolute;right:3%;top:22%;height:65%;width:48%;border:1px solid #ffffff24;border-radius:12px;overflow:hidden}
.home-hero>.hero-overlay,.black-hero>.hero-overlay{background:linear-gradient(90deg,#08070a 0%,#08070af2 38%,#08070a22 56%,transparent 68%)}
.product-card .image>.fad-accurate-image{height:100%;aspect-ratio:auto}
.fad-shot>.fad-accurate-image{height:auto;aspect-ratio:4/5}
.editorial-card>.fad-accurate-image{position:absolute;inset:0;height:100%;padding-bottom:160px}
.editorial-content{background:linear-gradient(transparent,#08070af5 24%)}
.subhero-visual>.fad-accurate-image{min-height:300px}
.cart-line>.fad-accurate-image{width:78px;height:78px;min-height:0;aspect-ratio:1;border-radius:8px}
.cart-line .fad-mask-plane{padding:3px}
@media(max-width:900px){.hero-photo.fad-accurate-image>.fad-product-grid{right:2%;width:48%;top:28%;height:55%}.home-hero-content,.black-hero-content{max-width:100%}}
@media(max-width:640px){.home-hero,.black-hero{min-height:850px}.home-hero-content,.black-hero-content{padding-bottom:310px!important}.hero-photo.fad-accurate-image>.fad-product-grid{left:5%;right:5%;bottom:22px;top:auto;width:90%;height:250px;border-radius:9px}.home-hero>.hero-overlay,.black-hero>.hero-overlay{background:linear-gradient(#08070a 0%,#08070a 54%,transparent 65%)}.fad-mask-plane{padding:10px}.fad-shot>.fad-accurate-image{aspect-ratio:4/5}.cart-line>.fad-accurate-image{width:64px;height:64px}}
/* Keep the original headline treatment legible beside the exact product photos. */
@media(min-width:801px){.home-hero-content,.black-hero-content{width:44%;max-width:640px;margin-left:4.5%;margin-right:0}.home-hero h1{font-size:clamp(74px,7.5vw,108px)}.black-hero h1{font-size:clamp(60px,6.3vw,91px)}.hero-photo.fad-accurate-image>.fad-product-grid{top:15%;height:70%;right:3%;width:47%}.home-hero>.hero-overlay,.black-hero>.hero-overlay{background:transparent}}
@media(max-width:800px){.home-hero,.black-hero{min-height:850px}.home-hero-content,.black-hero-content{width:90%;max-width:none;margin-inline:auto;padding:50px 0 330px!important}.hero-photo.fad-accurate-image>.fad-product-grid{left:5%;right:5%;bottom:22px;top:auto;width:90%;height:270px}.home-hero>.hero-overlay,.black-hero>.hero-overlay{background:transparent}}
.fad-personalisation>p{max-width:720px;line-height:1.8;margin-top:22px;color:var(--muted)}
.fad-personalisation .personalizer{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:40px 0}
.fad-personalisation .plate-stage{background:#e7ded4;color:#282126;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;padding:30px;text-align:center}
.fad-personalisation .plate-stage p{font-size:11px}.fad-personalisation .nameplate{width:min(100%,320px);min-height:140px;background:#252327;color:#eee6d9;border:2px solid #3f3b40;box-shadow:0 14px 0 #171619,0 25px 28px #0004;display:flex;flex-direction:column;justify-content:center;gap:17px;padding:20px}.fad-personalisation .nameplate.chalk{background:#ede6db;color:#252327;border-color:#d6cdbf;box-shadow:0 14px 0 #c2b5a5,0 25px 28px #0004}.plate-brand,.plate-caption{font-size:9px;letter-spacing:.15em}.fad-personalisation [data-monogram]{font-family:Georgia,serif;font-size:44px;line-height:1.1}
.fad-personalisation .personalizer-controls h3{font-size:30px}.fad-personalisation .personalizer-controls p{font-size:13px;line-height:1.7;margin:15px 0;color:var(--muted)}.fad-personalisation label{display:block;margin:20px 0 8px;font-size:13px}.fad-personalisation input,.fad-personalisation select{width:100%;padding:14px;color:#201920;background:#f4ece3;border:1px solid #a99e9e}.fad-personalisation .section{margin:45px 0;max-width:850px}.fad-personalisation .section h2{font-size:32px}.fad-personalisation .section h3{font-size:21px}.fad-personalisation .section p{font-size:14px;line-height:1.8;color:var(--muted);margin:15px 0}.fad-personalisation .steps{padding-left:25px}.fad-personalisation .steps li{padding:12px 0}.fad-personalisation details{padding:15px 0;border-bottom:1px solid var(--line)}
@media(max-width:800px){.fad-personalisation .personalizer{grid-template-columns:1fr}}
/* The original mobile peek cropped its concept photo; show the whole real mask. */
.mobile-product-peek{max-height:none}
.mobile-product-peek>.fad-accurate-image{height:auto;aspect-ratio:1}
/* 3 November: bring back the campaign, with real product photography in the shop. */
.home-hero.fad-model-led{min-height:700px;background:#100609;align-items:center}
.home-hero.fad-model-led>.fad-campaign-hero{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center;opacity:1}
.home-hero.fad-model-led>.hero-overlay{background:linear-gradient(90deg,#08070aee 0%,#08070ad4 29%,#08070a64 48%,transparent 67%)}
.home-hero.fad-model-led>.home-hero-content{width:45%;max-width:620px;margin-left:4.5%;margin-right:0;padding:52px 0 48px!important}
.home-hero.fad-model-led h1{font-size:clamp(78px,7.5vw,112px);margin:24px 0 22px}
.fad-model-led .lead{font-size:19px;max-width:380px}.fad-hero-gift{margin-top:22px;max-width:410px}.fad-hero-gift strong{display:block;font-size:15px;color:var(--lime);letter-spacing:.025em}.fad-hero-gift span{display:block;margin-top:7px;font-size:13px;line-height:1.5;color:#e3d6da}.fad-model-led .hero-actions{margin-top:25px;gap:10px}.fad-model-led .hero-actions .btn{font-size:11px;padding-inline:19px}.fad-hero-note{margin-top:18px;color:#d0bdc4!important;font-size:10px}.fad-hero-note a{text-decoration:underline;text-underline-offset:3px}.fad-campaign-caption{position:absolute;bottom:15px;right:3%;z-index:3;font-size:9px;color:#f4e8e3bf;background:#10080b87;padding:5px 7px}
.fad-gift-value-copy{margin-top:15px}.gift-product-art.fad-real-gift{background:#fff;min-height:0}.fad-gift-photo{display:block;width:100%;height:100%;object-fit:contain;aspect-ratio:1}.gift-product-art .fad-gift-photo{align-self:center;max-height:430px}.gift-mini-art.fad-real-gift{background:#fff}.gift-mini-art .fad-gift-photo{max-height:177px}.fad-set-values{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 20px}.fad-set-values div{display:grid;gap:6px;line-height:1.5}.fad-set-values strong{font-size:11px}.fad-set-values span{font-size:11px;color:#715a63}.fad-set-values b{font-size:12px}.gift-legal a,.fad-mini-terms a{text-decoration:underline;text-underline-offset:2px}.fad-mini-terms{font-size:10px!important;margin-top:13px;line-height:1.6!important}.fad-cart-gift-product{display:flex;gap:12px;align-items:center;margin-top:10px}.fad-cart-gift-product img{width:62px;height:62px;object-fit:contain;background:#fff;flex:0 0 62px}.fad-cart-gift-product p{margin:0}.fad-simple-steps{padding:0;margin:35px 0 0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.fad-simple-steps li{border-top:1px solid var(--line);padding:24px 0}.fad-simple-steps li>b{font-size:14px;color:var(--pink)}.fad-simple-steps h3{font-size:30px;letter-spacing:-.05em;margin-top:20px}.fad-simple-steps p{font-size:14px;line-height:1.8;color:var(--muted);margin:18px 0}.fad-simple-steps a{font-size:11px;font-weight:800;text-decoration:underline;text-underline-offset:6px}
@media(min-width:801px) and (max-width:1100px){.home-hero.fad-model-led>.home-hero-content{width:48%}.home-hero.fad-model-led h1{font-size:85px}.fad-model-led .lead{font-size:17px}.fad-model-led .hero-actions{flex-direction:column;align-items:flex-start}}
@media(max-width:800px){.home-hero.fad-model-led{min-height:0;align-items:flex-start;display:block}.home-hero.fad-model-led>.fad-campaign-hero{height:350px;object-position:80% center}.home-hero.fad-model-led>.hero-overlay{height:365px;background:linear-gradient(0deg,#08070a 0%,#08070a08 45%,transparent 100%)}.home-hero.fad-model-led>.home-hero-content{margin:0 auto;width:90%;padding:285px 0 45px!important;max-width:none}.home-hero.fad-model-led h1{font-size:clamp(58px,9vw,76px);margin:18px 0}.fad-model-led .lead{font-size:16px}.fad-model-led .eyebrow-pill{padding:8px 12px;font-size:9px}.fad-hero-gift{margin-top:17px}.fad-hero-gift strong{font-size:13px}.fad-hero-gift span{font-size:12px}.fad-model-led .hero-actions{margin-top:20px}.fad-model-led .hero-actions .btn{padding:12px 14px;font-size:10px;min-height:46px}.fad-campaign-caption{top:267px;bottom:auto;right:5%;font-size:8px}.fad-simple-steps{grid-template-columns:1fr;gap:12px}.fad-simple-steps h3{margin-top:13px}.fad-simple-steps p{margin:13px 0}.fad-set-values{gap:12px}.gift-product-art .fad-gift-photo{width:100%;max-height:340px}.gift-product-art.fad-real-gift{min-height:0}.gift-product-brand{margin-top:16px}}
@media(max-width:380px){.home-hero.fad-model-led>.home-hero-content{padding-top:245px!important}.home-hero.fad-model-led>.fad-campaign-hero{height:310px}.home-hero.fad-model-led>.hero-overlay{height:325px}.fad-campaign-caption{top:230px}.home-hero.fad-model-led h1{font-size:54px}.fad-model-led .hero-actions{gap:8px}.fad-model-led .hero-actions .btn{font-size:9px;padding-inline:11px}.fad-set-values{grid-template-columns:1fr}.fad-hero-gift span{font-size:11px}}
/* Mobile audit: accessible targets, iOS focus sizing and notched-screen spacing. */
.early-launch-label{font-size:10px;font-weight:850;letter-spacing:.06em}
.header .logo{min-height:44px;display:flex;align-items:center}.header .icon-btn,#bag-close,#quiz-close{min-width:44px;min-height:44px}.nav a{min-height:44px;display:inline-flex;align-items:center}
.cart-qty button{width:44px;height:44px;flex:0 0 44px}.cart-gift-line button{min-height:44px;padding:8px 0}.drawer-top,.drawer-bottom{flex-shrink:0}.drawer-items{min-height:0;overscroll-behavior:contain}
.drawer:not(.active){visibility:hidden}.drawer.active{visibility:visible}.modal-content{max-height:calc(100dvh - 32px);overflow-y:auto}
@media(max-width:1024px){input,select,textarea{font-size:16px!important}}
@media(max-width:800px){.header{padding-left:max(4.5%,env(safe-area-inset-left,0px));padding-right:max(4.5%,env(safe-area-inset-right,0px))}.mobile-sticky{padding-bottom:calc(11px + env(safe-area-inset-bottom,0px))}body{padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}.drawer{height:100vh;height:100dvh;max-height:100%;padding-top:max(19px,env(safe-area-inset-top,0px));padding-bottom:max(19px,env(safe-area-inset-bottom,0px));padding-left:max(19px,env(safe-area-inset-left,0px));padding-right:max(19px,env(safe-area-inset-right,0px))}.announce{flex-wrap:wrap;gap:6px 12px}.announce .early-launch-label{font-size:8px}.header-actions{gap:7px}.header{gap:10px}}
@media(max-width:380px){.header .logo{font-size:17px}.header-actions{gap:3px}.header{gap:6px}.early-launch-label{font-size:8px}}
@media(max-height:520px){.drawer{display:block;overflow-y:auto;overscroll-behavior:contain}.drawer-items{overflow:visible;min-height:0}.drawer-top{position:sticky;top:-1px;background:#f3ece4;z-index:2;padding-top:5px}.drawer-bottom{padding-top:20px}.modal{align-items:flex-start;overflow-y:auto}.modal-content{margin-block:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Wearer images keep the existing collection-card dimensions and crop safely. */
#shop .product-card .image > .fad-lifestyle-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 35%;}

/* Product pages: keep the actual device visible, with an optional campaign view. */
.fad-product-gallery{width:100%;min-width:0;background:#fff;color:#151015}
.fad-gallery-view[hidden]{display:none!important}
.fad-gallery-view{height:420px;overflow:hidden;background:#fff}
.fad-gallery-view>.fad-accurate-image{height:100%;aspect-ratio:auto;min-height:0}
.fad-gallery-worn{display:block;position:static!important;inset:auto!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 35%}
.fad-gallery-controls{display:flex;justify-content:center;gap:6px;border-top:1px solid #e5dfda;padding:5px 8px}
.fad-gallery-controls button{background:transparent;color:#51474e;border:0;border-bottom:2px solid transparent;min-height:44px;padding:8px 14px;font:inherit;font-size:12px;cursor:pointer}
.fad-gallery-controls button[aria-pressed="true"]{border-bottom-color:#151015;color:#151015;font-weight:750}
.fad-gallery-controls button:focus-visible{outline:2px solid #151015;outline-offset:2px}
.fad-gallery-caption{font-size:10px!important;line-height:1.4!important;margin:0!important;padding:0 12px 10px;text-align:center;color:#675a60!important}
.product-hero .subhero-visual{background:#fff;min-height:0}
@media(max-width:550px){
 .product-hero{padding:20px 0 28px;min-height:0}
 .product-hero .subhero-copy{padding:0!important}
 .product-hero .breadcrumb{margin-bottom:15px}
 .product-hero h1{font-size:48px;line-height:.95;letter-spacing:-.07em;margin-top:12px!important}
 .product-hero h1 br{display:none}
 .product-hero h1 em{margin-left:.12em}
 .product-hero .lead{font-size:13px;line-height:1.55;margin-top:14px}
 .product-hero .mobile-product-peek{margin:17px 0 0;border-radius:10px;max-height:none;overflow:hidden}
 .fad-mobile-gallery .fad-gallery-view{height:180px}
 .fad-mobile-gallery .fad-soft-crop{width:min(100%,250px)}
 .fad-mobile-gallery .fad-mask-plane{padding:9px}
 .product-hero .pill-list{margin:12px 0;gap:6px}
 .product-hero .pill-list span{font-size:9px;padding:6px 8px}
 .product-hero .fad-product-price-row{margin:14px 0!important;gap:12px!important}
 .product-hero .product-price{font-size:34px}
 .product-hero .status-chip{font-size:8px;padding:6px 8px}
 .product-hero .hero-actions{margin-top:12px;gap:8px}
 .product-hero .hero-actions .btn{min-height:46px;font-size:10px;padding:12px 14px}
 .product-hero .fine{margin-top:12px!important}
}

/* Full mask illustrations replace the earlier supplier-composite crop. */
.fad-soft-illustration{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center}
.fad-accurate-image .fad-soft-illustration img{position:static!important;width:100%!important;height:auto!important;max-height:100%!important;object-fit:contain!important}

.fad-gallery-view [data-mask]{padding:0;background:#e5e0db}
.fad-gallery-view [data-mask] img{width:100%!important;height:100%!important;object-fit:contain!important;aspect-ratio:auto!important}
.fad-gallery-view .fad-soft-illustration{height:100%;aspect-ratio:auto}
@media(max-width:550px){.fad-mobile-gallery [data-gallery-panel="product"]{height:250px}}
/* Buying-guide editorial campaign artwork; keep both models visible at every width. */
.fad-guide-campaign{display:block;width:100%;max-width:100%;margin:0;overflow:hidden;aspect-ratio:1;background:#251319;border:1px solid #ffffff12;border-radius:14px}
.fad-guide-campaign img{display:block;width:100%;height:100%;object-fit:contain;aspect-ratio:1}
@media(max-width:640px){.fad-guide-campaign{border-radius:10px}}

/* Two-column product specifications fit small screens without sideways scrolling. */
@media(max-width:600px){.spec-table:has(tr:first-child>:nth-child(2):last-child){min-width:0;table-layout:fixed}.spec-table:has(tr:first-child>:nth-child(2):last-child) th,.spec-table:has(tr:first-child>:nth-child(2):last-child) td{padding:12px 10px;font-size:12px;overflow-wrap:anywhere;white-space:normal}.spec-table:has(tr:first-child>:nth-child(2):last-child) td:first-child{width:38%}}
