/* Pebble Island retail refresh. Presentation only; existing interaction classes remain intact. */
:root {
  --bg:#faf9f6; --text:#182f2c; --muted:#65706a; --line:#dce1d9;
  --soft:#f0f1eb; --accent:#164f46; --max:1440px; --radius:6px;
  --retail-green:#164f46; --retail-cream:#eee9dd;
}
body { background:var(--bg); color:var(--text); font-family:'Segoe UI',Arial,sans-serif; line-height:1.55; -webkit-font-smoothing:antialiased; }
body h1,body h2,body h3 { text-wrap:balance; }
body h1,body .h1 { font-weight:600; letter-spacing:-.045em; line-height:1.12; }
body h2,body .h2 { font-weight:600; letter-spacing:-.035em; }
body button,body input,body select,body textarea { font:inherit; }
body :focus-visible { outline:3px solid #af7940; outline-offset:4px; }
body .input:focus,body .select:focus,body textarea:focus { border-color:var(--accent); box-shadow:0 0 0 3px #164f4618; }
body .page { padding:28px 40px 64px; }
body .site-header { background:#faf9f6; border-bottom:1px solid var(--line); }
body .topbar { padding:19px 40px; gap:28px; }
body .brand { gap:12px; flex-shrink:0; }
body .brand-logo { width:44px; height:44px; border-radius:50%; }
body .brand-name { font-size:23px; font-weight:650; letter-spacing:-1px; }
body .brand-tagline { font-size:10px; text-transform:uppercase; letter-spacing:1.6px; margin-top:2px; }
body .nav { gap:24px; align-items:center; }
body .nav-link { color:var(--text); font-size:13px; font-weight:600; opacity:1; padding:10px 0; }
body .nav-link:hover,body .nav-link.is-active { color:var(--accent); text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:9px; }
body .actions { gap:14px; }
body .icon-btn { border:0; background:transparent; padding:10px; }
body .actions .pill { border-radius:4px; font-size:12px; padding:10px 16px; white-space:nowrap; }
body .badge { background:var(--accent); }
body .header-trust { background:var(--retail-green); color:#fff; justify-content:center; padding:0 24px; gap:0; }
body .header-trust__pill { background:none; color:#f5f2e9; border:0; border-radius:0; padding:10px 28px; font-size:11px; font-weight:500; letter-spacing:.3px; }
body .header-trust__pill + .header-trust__pill { border-left:1px solid #ffffff25; }
body .mini-nav { background:var(--bg); }
body .mini-nav__inner { gap:24px; padding:0 20px; }
body .mini-link { border:0; border-radius:0; background:none; padding:12px 0; font-size:12px; font-weight:600; }
body .mini-link.is-active { background:none; color:var(--accent); box-shadow:inset 0 -2px var(--accent); }
body .pi-announce { background:var(--retail-cream); color:var(--text); }
body .btn { border-radius:4px; border:1px solid var(--accent); background:var(--accent); color:#fff; padding:12px 22px; font-weight:600; font-size:13px; min-height:46px; box-shadow:none; transition:background .18s,border-color .18s; }
body .btn:hover { background:#103d35; border-color:#103d35; box-shadow:none; }
body .btn-ghost { background:transparent; border-color:#bfc9bf; color:var(--text); }
body .btn-ghost:hover { background:#e8ede5; color:var(--text); border-color:var(--accent); }
body .input,body .select,body textarea { border-radius:4px; border:1px solid #c9d2c7; background:#fff; color:var(--text); min-height:46px; }
body .label { font-size:12px; font-weight:600; letter-spacing:.035em; }
body .pill { border-radius:4px; }
body .section { padding:24px 0; }
body .home-shell { gap:16px; }
body .home-card { border:0; border-radius:0; box-shadow:none; background:transparent; }
body .section-pad { padding:18px 0; }
body .section-head { margin-bottom:26px; align-items:center; }
body .section-head h2 { font-size:32px; font-weight:550; }
body .section-head p { font-size:14px; color:var(--muted); }
/* Editorial split hero, using the supplied fashion photography. */
body .hero-shell { background:#eae6da; color:var(--text); min-height:550px; border-radius:4px; }
body .hero-shell::before { display:none; }
body .hero-shell .hero-media { left:52%; background-image:var(--hero-image); background-position:center 32%; background-size:cover; transform:none; filter:none; }
body .hero-grid { grid-template-columns:minmax(0,1fr); min-height:550px; padding:58px 48px 26px; gap:38px; }
body .hero-copy { align-self:center; max-width:44%; }
body .hero-copy h1 { font-family:Georgia,'Times New Roman',serif; font-size:clamp(40px,4.8vw,68px); font-weight:400; line-height:1.04; letter-spacing:-.045em; margin:22px 0; }
body .hero-copy p { color:#566159; font-size:14px; line-height:1.75; max-width:39ch; }
body .eyebrow { padding:0; background:none; border:0; color:var(--accent); font-size:10px; font-weight:700; letter-spacing:.18em; }
body .eyebrow-dot { background:var(--accent); width:5px; height:5px; }
body .hero-actions { gap:8px; margin-top:26px; }
body .hero-actions .btn { min-height:44px; padding:10px 16px; }
body .hero-actions .btn-ghost { background:transparent; border-color:#8c9d8f; color:var(--text); }
body .hero-trust { grid-template-columns:repeat(3,minmax(0,1fr)); max-width:46%; gap:12px; }
body .hero-stat { background:none; border:0; border-top:1px solid #b9c2b5; border-radius:0; padding:14px 0 0; backdrop-filter:none; }
body .hero-stat-value { font-size:20px; color:var(--accent); font-weight:650; }
body .hero-stat-label { font-size:10px; line-height:1.55; color:#59655d; }
body .trust-strip { gap:0; border-block:1px solid var(--line); }
body .trust-tile { border:0; border-radius:0; background:transparent; padding:20px 24px; }
body .trust-tile + .trust-tile { border-left:1px solid var(--line); }
body .trust-tile strong { font-size:13px; font-weight:600; }
body .trust-tile span { font-size:12px; }
body .featured-grid,body .shop-grid { gap:30px 22px; }
body .home-product__media,body .product-media,body .related-media { border-radius:4px; border:0; background:#eeede7; }
body .home-product__media img,body .product-media img { object-fit:contain; }
body .home-product__info { padding:15px 0 0; }
body .home-product__title,body .product-card .product-title { font-size:14px; font-weight:600; line-height:1.45; letter-spacing:0; }
body .home-product__price,body .product-card .product-price { font-size:15px; color:var(--accent); font-weight:650; letter-spacing:0; }
body .home-product__meta { font-size:12px; line-height:1.6; }
body .home-product__badge,body .badge-offer,body .badge-stock { border-radius:2px; box-shadow:none; font-weight:600; letter-spacing:.06em; font-size:10px; }
body .home-product__badge,body .badge-offer { background:var(--accent); color:white; }
body .category-grid { gap:22px; }
body .category-card { border-radius:4px; box-shadow:none; min-height:420px; }
body .category-card__content { padding:28px; }
body .category-card__title { font-family:Georgia,serif; font-weight:400; font-size:40px; }
body .category-card__count,body .category-card__cta { border-radius:2px; font-weight:500; }
body .offer-banner,body .about-panel { border-radius:4px; background:var(--retail-green); box-shadow:none; }
body .offer-product,body .assurance-card,body .review-card,body .about-side__card { border-radius:4px; box-shadow:none; border-color:var(--line); }
body .review-stars,body .testimonial-stars { color:#956526; }
/* Shared storefront surfaces: catalogue, basket, account, checkout and help. */
body .shop-hero,body .basket-hero,body .checkout-hero,body .contact-hero,body .info-hero,body .testimonials-hero { background:var(--retail-cream); color:var(--text); border-radius:4px; box-shadow:none; padding:32px; }
body .shop-hero::before { display:none; }
body .shop-hero p,body .basket-hero p,body .checkout-hero p,body .contact-hero p,body .info-hero p,body .testimonials-hero p { color:#586459; }
body .shop-eyebrow,body .shop-count,body .hero-chip { background:#ffffff70; color:var(--accent); border-color:#cbd1c3; border-radius:3px; }
body .shop-eyebrow::before { background:var(--accent); }
body .shop-pills { gap:8px; }
body .shop-pills .pill { color:var(--text); background:transparent; border:1px solid #b6c3b4; border-radius:3px; }
body .shop-pills .pill.is-active { color:#fff; background:var(--accent); border-color:var(--accent); }
body .shop-trust-card,body .basket-trust-card,body .trust-card,body .contact-card,body .info-card { background:transparent; border:0; border-bottom:1px solid var(--line); border-radius:0; box-shadow:none; padding:15px 8px; }
body .shop-sticky { top:84px; }
body .shop-controls { border-radius:4px; box-shadow:0 4px 16px #18352c08; padding:18px; background:#faf9f6f5; }
body .shop-controls .input,body .shop-controls .select,body .shop-controls .btn { border-radius:4px; }
body .shop-summary-pill { border-radius:3px; background:#eaf0e6; color:#425746; }
body .product-card { border-radius:4px; border:0; background:transparent; box-shadow:none; overflow:visible; }
body .product-card:hover { transform:none; box-shadow:none; }
body .product-card .product-info { padding:16px 0; }
body .product-card .product-actions { padding:0 0 16px; }
body .product-main { border-radius:4px; box-shadow:none; background:#eeede7; border:0; }
body .product-main img { object-fit:contain; }
body .thumb-btn { border-radius:3px; }
body .product-panel,body .desc-card,body .summary,body .summary-card,body .card,body .panel,body .basket-shell,body .basket-empty,body .contact-form-card,body .info-panel,body .testimonial-card,body .account-card,body .auth-card { border-radius:5px; border-color:var(--line); box-shadow:none; background:#fff; }
body .product-panel { padding:26px; }
body .product-panel--dark { background:var(--retail-green); color:#fff; }
body .product-title { font-weight:550; line-height:1.14; }
body .product-price { font-weight:650; }
body .product-chip,body .option-pill,body .product-stockline,body .info-list-item,body .pill-note,body .notice-inline { border-radius:3px; }
body .btn-full,body .checkout-cta .btn { border-radius:4px; }
body .basket-item { border-radius:4px; box-shadow:none; }
body .basket-thumb,body .basket-img { border-radius:3px; }
body .payment-card { border-radius:4px; }
body .payment-card.is-selected { border-color:var(--accent); background:#f0f5ed; }
body .mobile-buybar-inner { border-radius:5px; }
body .notice,body .error { border-radius:4px; }
body input[type=radio],body input[type=checkbox] { accent-color:var(--accent); }
body .site-footer { background:#183c34; color:#f4f2e9; border-top:0; margin-top:24px; }
body .footer-inner { max-width:var(--max); padding:52px 40px 24px; }
body .footer-title { font-weight:600; letter-spacing:.04em; font-size:13px; margin-bottom:16px; }
body .footer-brand .footer-title { font-family:Georgia,serif; font-size:30px; font-weight:400; letter-spacing:-.04em; }
body .site-footer .muted { color:#bbcabe; }
body .footer-link { font-size:13px; color:#e5eade; line-height:1.9; }
body .footer-link:hover { color:#fff; text-decoration:underline; }
body .footer-bottom { border-color:#ffffff24; margin-top:38px; padding-top:22px; font-size:11px; }
@media(min-width:981px) { body .product-shell { gap:36px; } }
@media(max-width:1190px) { body .nav { gap:14px; } body .topbar { gap:14px; padding-inline:24px; } body .brand-name { font-size:20px; } }
@media(min-width:981px) { body .nav { display:flex; } body .mini-nav { display:none; } }
@media(max-width:980px) { body .nav { display:none; } body .mini-nav { display:block; } body .topbar { padding:14px 20px; } body .page { padding:22px 24px 44px; } body .shop-sticky { top:124px; } body .hero-grid { padding:38px 28px 24px; } body .hero-copy { max-width:46%; } body .hero-copy h1 { font-size:44px; } body .hero-trust { max-width:48%; } body .header-trust__pill { padding-inline:18px; } }
@media(max-width:640px) {
 body .page { padding:16px 16px 36px; } body .brand-tagline { font-size:8px; letter-spacing:1px; } body .brand-name { font-size:19px; } body .brand-logo { width:34px; height:34px; } body .brand { gap:8px; } body .actions { gap:5px; } body .actions .pill { padding:8px; font-size:11px; } body .icon-btn { padding:7px; } body .topbar { padding:12px 16px; gap:8px; }
 body .header-trust { justify-content:flex-start; padding:0; } body .header-trust__pill { padding:9px 16px; font-size:10px; }
 body .hero-shell { min-height:0; } body .hero-shell .hero-media { position:relative; left:auto; min-height:0; height:300px; background-position:center 27%; }
 body .hero-grid { min-height:0; padding:28px 24px; gap:28px; } body .hero-copy { max-width:none; } body .hero-copy h1 { font-size:44px; margin:14px 0 18px; } body .hero-copy p { max-width:none; font-size:13px; } body .hero-trust { max-width:none; } body .hero-stat-label { font-size:10px; }
 body .section { padding:16px 0; } body .section-head { gap:12px; align-items:flex-start; } body .section-head h2 { font-size:27px; } body .section-head p { font-size:12px; } body .section-link { padding:10px 12px; min-height:40px; white-space:nowrap; }
 body .trust-tile { padding:16px 10px; } body .trust-tile:nth-child(3) { border-left:0; } body .trust-tile:nth-child(n+3) { border-top:1px solid var(--line); }
 body .featured-grid,body .shop-grid { gap:24px 12px; } body .category-card { min-height:390px; } body .category-grid { gap:16px; }
 body .shop-hero,body .basket-hero,body .checkout-hero,body .contact-hero,body .info-hero,body .testimonials-hero { padding:24px 20px; }
 body .shop-title-row .h1,body .basket-hero h1,body .checkout-hero h1 { font-size:36px; line-height:1.12; }
 body .product-panel { padding:20px; } body .product-title { font-size:32px; } body .footer-inner { padding:36px 22px 22px; }
}
@media(max-width:360px) { body .brand-logo { display:none; } body .hero-copy h1 { font-size:38px; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; } body .pi-announce__track { padding-left:0; white-space:normal; } }
/* Secondary pages and interactive overlays use the same retail materials. */
body .auth-hero,body .account-hero,body .account-orders-hero,body .status-hero,body .policy-hero,body .legal-hero,body .review-hero,body .error-hero { background:var(--retail-cream); color:var(--text); border-radius:4px; padding:30px; box-shadow:none; }
body .auth-hero p,body .account-hero p,body .account-orders-hero p,body .status-hero p,body .policy-hero p,body .legal-hero p,body .review-hero p,body .error-hero p { color:#586459; }
body .auth-card,body .account-card,body .account-orders-card,body .status-card,body .policy-card,body .legal-card,body .panelish,body .error-card { border-radius:5px; border-color:var(--line); box-shadow:none; background:#fff; }
body .auth-card .input,body .account-card .input { border-radius:4px; }
body .auth-note,body .status-note,body .account-tab,body .order-row,body .status-chip { border-radius:4px; }
body .account-tab.is-active { background:var(--accent); border-color:var(--accent); color:white; }
body .offer-panel { border-radius:4px; background:var(--accent); }
body .offer-panel::before { background:none; }
body .offer-kicker,body .offer-product__media { border-radius:3px; }
body .offer-actions .btn-ghost,body .about-links .btn-ghost { background:transparent; border-color:#ffffff70; color:#fff; }
body .offer-actions .btn-ghost:hover,body .about-links .btn-ghost:hover { background:#ffffff18; }
body .product-card .product-meta { padding:15px 0 12px; }
body .meta-chip { border-radius:2px; font-weight:500; }
body .quickadd-btn { width:100%; margin:0 0 12px; border-radius:3px; background:transparent; border-color:#b5c3b1; color:var(--accent); font-weight:600; }
body .quickadd-btn:hover { background:var(--accent); border-color:var(--accent); }
body .qa-modal { border-radius:6px; box-shadow:0 24px 80px #173b2630; }
body .empty-state { border-radius:4px; background:var(--retail-cream); }
body .testimonials-hero .hero-stat { border-color:#bcc8b5; color:var(--text); }
@media(max-width:640px) { body .auth-hero,body .account-hero,body .account-orders-hero,body .status-hero,body .policy-hero,body .legal-hero,body .review-hero,body .error-hero { padding:24px 20px; } }
body .offer-panel { display:flex; flex-direction:column; justify-content:center; padding:40px; }
body .offer-product__media { aspect-ratio:4/3; }
body .about-panel { padding:32px; }
body .hero-actions .btn:first-child { flex-basis:100%; max-width:190px; }
@media(min-width:641px) and (max-width:980px) { body .hero-copy h1 { font-size:40px; } }
@media(max-width:640px) { body .offer-panel { padding:28px; } body .footer-cols--4 { grid-template-columns:1fr 1fr; gap:28px 18px; } body .footer-brand { grid-column:1/-1; } }
body .product-panel--dark .product-title,body .product-panel--dark .product-price { color:#fffdf2; }
body .product-buy { border:0; border-radius:0; background:transparent; box-shadow:none; padding:0; }
body .offer-kicker { align-self:flex-start; }
@media(max-width:640px) { body .site-footer .footer-cols.footer-cols--4 { grid-template-columns:1fr 1fr; } }
/* Keep item columns readable inside the receipt on narrow screens. */
@media(max-width:760px) { body table.order-items { display:block; max-width:100%; overflow-x:auto; } }
body .auth-page { max-width:680px; margin-inline:auto; }
body .auth-card,body .auth-note { width:100%; max-width:none; }
body .auth-card { padding:28px; }
body .auth-card .field,body .account-card .field { display:grid; gap:8px; margin-bottom:18px; min-width:0; }
body .pager { border-radius:4px; box-shadow:none; border-color:var(--line); }
body .pager-btn { border-radius:3px; }
body button:disabled,body .btn:disabled { opacity:.55; cursor:not-allowed; }
body .mobile-sticky .btn { border-radius:4px; }
body .testimonials-hero .hero-stat span { color:#586459; }
