/* V9: reliable product photographs, compact engraving previews, and browsing chrome. */
.med-boutique-theme.med-template-product .product-information__media{width:100%;min-width:0;max-width:100%}
.med-boutique-theme.med-template-product .product-information__grid.product-information__grid--half.product-information--media-left>.product-information__media{width:100%;min-width:0;max-width:100%;align-self:start}
med-product-gallery{display:block;width:100%;min-width:0;max-width:100%;color:#183b42}
med-product-gallery *{box-sizing:border-box}
med-product-gallery .med-gallery-stage{width:100%;min-width:0;position:relative;background:#fafaf7;border:1px solid #e4e7de;border-radius:5px;overflow:hidden}
med-product-gallery .med-gallery-arrow{position:absolute;top:50%;z-index:2;display:grid;place-items:center;width:48px;height:48px;min-width:48px;min-height:48px;margin:0;padding:0;transform:translateY(-50%);appearance:none;border:0;border-radius:0;background:transparent;color:#183b42;box-shadow:none;line-height:1;cursor:pointer}
med-product-gallery .med-gallery-arrow[hidden]{display:none}
med-product-gallery .med-gallery-arrow--previous{left:12px}
med-product-gallery .med-gallery-arrow--next{right:12px}
med-product-gallery .med-gallery-arrow svg{width:24px;height:24px;pointer-events:none}
med-product-gallery .med-gallery-arrow:hover{color:#0d252a}
@media(hover:hover) and (pointer:fine){
 med-product-gallery .med-gallery-arrow{opacity:0;pointer-events:none;transition:opacity 150ms ease}
 med-product-gallery .med-gallery-stage:hover>.med-gallery-arrow,med-product-gallery .med-gallery-stage:has(:focus-visible)>.med-gallery-arrow{opacity:1;pointer-events:auto}
}
@media(prefers-reduced-motion:reduce){med-product-gallery .med-gallery-arrow{transition:none}}
med-product-gallery .med-gallery-slide{margin:0;width:100%;min-width:0}
med-product-gallery .med-gallery-photo{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:1;max-height:max(250px,calc(100svh - var(--header-height,120px) - 155px));min-height:250px;padding:12px;background:#fff;color:#183b42}
med-product-gallery img.med-gallery-image{position:absolute;inset:12px;width:calc(100% - 24px);height:calc(100% - 24px);max-height:none;object-fit:contain;object-position:center;opacity:1;visibility:visible;border-radius:0}
.med-gallery-enlarge{position:absolute;bottom:13px;right:13px;display:flex;align-items:center;gap:8px;padding:9px 13px;background:rgb(255 255 255 / 94%);border:1px solid #bfcabd;border-radius:30px;color:#183b42;font:600 12px/1.5 var(--font-body--family)}
.med-gallery-toolbar{display:flex;justify-content:center;align-items:center;gap:25px;min-height:44px}
.med-gallery-toolbar button{min-width:44px;min-height:42px;padding:6px 10px;border:0;background:none;color:#183b42;font-size:22px;cursor:pointer}
.med-gallery-toolbar p{font-size:12px;letter-spacing:.06em;margin:0}
.med-gallery-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:4px 3px 8px;scrollbar-width:thin;max-width:100%}
.med-gallery-thumbnail{position:relative;display:grid;place-items:center;flex:0 0 var(--med-thumb-size,68px);width:var(--med-thumb-size,68px);aspect-ratio:1;border:1px solid #ccd5c8;border-radius:3px;overflow:hidden;background:white;padding:4px}
.med-gallery-thumbnail img{width:100%;height:100%;object-fit:contain}
.med-gallery-thumbnail[aria-current=true]{border-color:#183b42;box-shadow:0 0 0 2px #183b42}
.med-gallery-media-label{position:absolute;bottom:0;left:0;right:0;background:#183b42;color:#fff;text-align:center;font-size:9px;line-height:1.5}
.med-gallery-media{display:grid;place-items:center;min-height:280px;aspect-ratio:1}
.med-gallery-media :is(video,iframe,model-viewer){display:block;width:100%;height:100%;max-height:max(250px,calc(100svh - var(--header-height,120px) - 155px));border:0;object-fit:contain}
.med-gallery-dialog{position:fixed;inset:0;width:min(1100px,94vw);height:min(90svh,1000px);max-width:94vw;max-height:90svh;padding:48px 18px 18px;margin:auto;background:white;border:0;border-radius:6px;color:#183b42;overflow:auto}
.med-gallery-dialog:not([open]){display:none}
.med-gallery-dialog::backdrop{background:rgb(15 35 32 / 70%)}
.med-gallery-dialog>img{display:block;width:100%;height:100%;object-fit:contain}
.med-gallery-close{position:absolute;top:8px;right:12px;border:0;border-radius:50%;background:#eef0e8;color:#183b42;min-width:40px;min-height:40px;font-size:28px;cursor:pointer}
med-product-gallery :is(a,button):focus-visible{outline:3px solid #536f48;outline-offset:3px}
.med-gallery-editor-note{padding:24px;border:1px dashed #a7b59d;font-size:14px;line-height:1.6}
.med-boutique-theme .med-engraving-columns{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(145px,1fr);gap:20px;align-items:start}
.med-boutique-theme .med-line-groups{width:100%;min-width:0}
.med-boutique-theme .med-text-preview{position:static;order:0;display:block;width:100%;max-width:210px;justify-self:end;padding:16px 12px;background:#f5f6ef;border:1px solid #dbe2d1;border-radius:5px;min-width:0}
.med-boutique-theme .med-text-preview>p:first-child{font-size:10px;font-weight:700;letter-spacing:.1em;color:#40573a;margin-bottom:10px}
.med-boutique-theme .med-preview-content{display:block;width:100%;min-width:0}
.med-boutique-theme .med-preview-side{width:100%;min-width:0;max-width:none;margin:0;padding:5px 0}
.med-boutique-theme .med-preview-tabs{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;margin-bottom:10px}
.med-preview-tabs button{min-height:32px;padding:5px 8px;border:1px solid #acb9a1;border-radius:30px;background:#fff;color:#284b4a;cursor:pointer;font:600 10px/1.5 var(--font-body--family)}
.med-preview-tabs button[aria-pressed=true]{color:#fff;background:#284b4a;border-color:#284b4a}
.med-preview-tabs button:focus-visible{outline:3px solid #536f48;outline-offset:3px}
.med-engraving-plate{position:relative;isolation:isolate;width:100%;max-width:100%;aspect-ratio:2;min-height:90px;margin:0 auto;filter:drop-shadow(0 3px 2px rgb(60 73 56 / 10%))}
.med-engraving-plate::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--med-tone-fill,linear-gradient(125deg,#bdc5c3,#f7f9f7 35%,#c8d0ca 65%,#e7ebe7));border:1px solid #a4afa4;border-radius:14px;box-shadow:inset 0 0 0 3px rgb(255 255 255 / 35%)}
.med-engraving-face{position:absolute;inset:12% 7%;display:grid;place-items:center;overflow:visible}
.med-boutique-theme .med-preview-side p.med-engraving-text{width:max-content;max-width:none;min-height:0;height:auto;padding:0;margin:0;border:0;border-radius:0;box-shadow:none;background:none;color:var(--med-tone-ink,#183b42);font-family:var(--font-body--family,sans-serif);font-size:12px;font-weight:700;line-height:1.14;letter-spacing:0;text-align:center;white-space:pre;overflow-wrap:normal;word-break:normal}
.med-boutique-theme .med-preview-side p.med-engraving-text[data-placeholder=true]{font-weight:400;letter-spacing:0;font-size:12px;color:#4e5e54}
.med-boutique-theme .med-text-preview>.med-preview-size-hint{font-size:10px;line-height:1.5;letter-spacing:0;font-weight:400;margin:10px 0 0;color:#536046}
.med-preview-size-hint:empty{display:none}
.med-boutique-theme .med-text-preview>small{font-size:10px;line-height:1.5;color:#56634f;max-width:190px;margin:10px auto 0}
.med-pendant-bail{display:none}
med-personalizer:not([data-preview-shape=bracelet]) .med-engraving-plate{width:min(100%,110px);aspect-ratio:.78;min-height:0;margin-top:18px}
med-personalizer:not([data-preview-shape=bracelet]) .med-engraving-plate::before{border-radius:35% 35% 27% 27%}
med-personalizer:not([data-preview-shape=bracelet]) .med-engraving-face{inset:19% 12%}
med-personalizer:not([data-preview-shape=bracelet]) .med-pendant-bail{display:block;position:absolute;bottom:calc(100% - 3px);left:calc(50% - 6px);width:12px;height:18px;border:2px solid #9eaaa1;border-radius:50%;box-shadow:inset 0 0 0 1px white;z-index:2}
med-personalizer:not([data-preview-shape=bracelet]) .med-pendant-bail::before,med-personalizer:not([data-preview-shape=bracelet]) .med-pendant-bail::after{content:"";position:absolute;width:28px;height:1px;bottom:13px;background:#a2ada5}
med-personalizer:not([data-preview-shape=bracelet]) .med-pendant-bail::before{right:4px;transform:rotate(25deg);transform-origin:right center}
med-personalizer:not([data-preview-shape=bracelet]) .med-pendant-bail::after{left:4px;transform:rotate(-25deg);transform-origin:left center}
med-personalizer[data-preview-shape=round] .med-engraving-plate{aspect-ratio:1;width:min(100%,130px)}
med-personalizer[data-preview-shape=round] .med-engraving-plate::before{border-radius:50%}
med-personalizer[data-preview-shape=round] .med-engraving-face{inset:20% 14%}
med-personalizer[data-preview-shape=dog-tag] .med-engraving-plate{aspect-ratio:.66;width:min(100%,92px)}
med-personalizer[data-preview-shape=dog-tag] .med-engraving-plate::before{border-radius:24%}
med-personalizer[data-preview-shape=heart] .med-engraving-plate{aspect-ratio:1.1;width:min(100%,150px)}
med-personalizer[data-preview-shape=heart] .med-engraving-plate::before{border:0;border-radius:0;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 280'%3E%3Cpath d='M150 270C120 241 12 168 7 89C1 7 99-20 150 48C201-20 299 7 293 89C288 168 180 241 150 270Z'/%3E%3C/svg%3E") center/100% 100% no-repeat}
med-personalizer[data-preview-shape=heart] .med-engraving-face{inset:28% 20% 27%}
med-personalizer[data-preview-shape=heart] .med-pendant-bail{bottom:calc(100% - 15px)}
.med-boutique-theme:not(.med-template-index) .header__row--top{--header-padding:6px}
.med-boutique-theme:not(.med-template-index) .header__row--bottom .header__columns{--padding-block-start:3px;--padding-block-end:3px}
.med-boutique-theme:not(.med-template-index) .header__row--bottom .menu-list__link{font-size:15px;min-height:32px;letter-spacing:.06em}
.med-boutique-theme:not(.med-template-index) .header__row--bottom .menu-list__link-title{padding-block:4px}
.med-boutique-theme:not(.med-template-index) .med-header-search{min-height:40px;width:clamp(220px,26vw,340px);margin-inline:18px 8px}
.med-boutique-theme:not(.med-template-index) .med-header-search input{font-size:15px;padding:7px 2px}
.med-boutique-theme:not(.med-template-index) .med-header-search button{width:40px;height:40px;flex-basis:40px}
.med-boutique-theme:not(.med-template-index) .med-header-search svg{width:23px;height:23px}
.med-boutique-theme:not(.med-template-index) .header-actions__action{min-width:44px;min-height:42px}
.med-boutique-theme:not(.med-template-index) .header-actions__action>.svg-wrapper,.med-boutique-theme:not(.med-template-index) .header-actions__cart-icon>.svg-wrapper,.med-boutique-theme:not(.med-template-index) .header-actions__cart-icon svg{width:24px;height:24px}
.med-boutique-theme:not(.med-template-index) .account-button__icon{width:21px;height:24px}
.med-footer-email span{display:block;font-size:12px;line-height:1.6;overflow-wrap:anywhere;max-width:220px;margin-top:4px}
.med-review-source{font-size:11px;color:#5b665b;margin-top:6px}
@media(max-width:749px){
 med-product-gallery .med-gallery-arrow{width:44px;height:44px;min-width:44px;min-height:44px}
 med-product-gallery .med-gallery-arrow--previous{left:8px}
 med-product-gallery .med-gallery-arrow--next{right:8px}
 .med-boutique-theme.med-template-product .product-information__media{padding:0 18px;grid-column:1/-1;position:static}
 med-product-gallery .med-gallery-photo{max-height:440px;min-height:230px;aspect-ratio:1.06}
 .med-gallery-thumbnails{gap:9px}
 .med-gallery-enlarge{font-size:11px;padding:8px 10px}
 .med-gallery-dialog{width:96vw;max-width:96vw;height:85svh;max-height:85svh;padding:48px 8px 8px}
 .med-boutique-theme .med-engraving-columns{grid-template-columns:minmax(0,1.3fr) minmax(125px,1fr);gap:14px}
 .med-boutique-theme .med-text-preview{padding:14px 9px}
 .med-boutique-theme .med-line-input{height:46px;font-size:16px}
 .med-section .med-lifestyle-image{object-position:75% center}
}
@media(max-width:359px){
 .med-boutique-theme .med-engraving-columns{grid-template-columns:minmax(0,1fr)}
 .med-boutique-theme .med-text-preview{max-width:190px;justify-self:center}
}

.med-mobile-photo-link{display:none}
med-product-gallery{scroll-margin-top:calc(var(--header-height,90px) + 15px)}
@media(max-width:749px){.med-mobile-photo-link{display:block;width:fit-content;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:4px;margin:8px 0 12px}}

med-product-gallery .med-live-model[hidden]{display:none}
.med-live-viewer{width:100%;background:radial-gradient(ellipse at 40% 40%,#fff,#e8ece9);padding:14px 12px;color:#183b42}
.med-live-heading{text-align:center;font-size:13px;font-weight:600;letter-spacing:.04em}
.med-live-stage{position:relative;width:100%;height:clamp(280px,48vw,540px);max-height:max(280px,calc(100svh - var(--header-height,120px) - 270px))}
.med-live-stage canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab;outline-offset:-4px}
.med-live-message{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:24px;background:#eef0eb;font-size:14px}
.med-live-message[hidden]{display:none}
.med-live-tools{display:flex;justify-content:center;gap:7px;flex-wrap:wrap}
.med-live-tools button,.med-live-message button{border:1px solid #b6c2be;background:#fff;color:#183b42;border-radius:5px;padding:10px 12px;min-height:40px;font:inherit;font-size:12px;cursor:pointer}
.med-live-tools button[aria-pressed=true]{background:#183b42;color:#fff}
.med-live-tools button:focus-visible,.med-live-thumbnail:focus-visible{outline:2px solid #183b42;outline-offset:2px}
.med-live-hint,.med-live-note{text-align:center;font-size:11px;line-height:1.4;margin:8px 0 0;color:#536867}
.med-live-note{font-size:10px;margin-top:4px}
.med-live-thumbnail{color:#183b42;cursor:pointer;align-content:center;gap:3px;font-family:inherit;font-weight:600;font-size:11px;line-height:1.2}
