/* Aura Optics — a warm, editorial storefront. */
:root{--green:#164e3b;--dark:#123c2f;--cream:#f5f2e9;--gold:#ba9a50;--ink:#203e32;--muted:#748078;--line:#e7e9e2}
body{font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}body::after{border-width:1px;opacity:.75}.wrap{max-width:1320px;padding-left:56px;padding-right:56px}.preview{font-size:10px;padding:8px 15px;letter-spacing:.8px}.nav{height:108px;gap:32px}.logo{width:135px;height:80px}.links{gap:26px}.links button{font-size:13px}.cart-btn{font-size:12px;padding:12px 18px;background:#f5f6f0}.btn{font-size:12px;letter-spacing:.2px;border-radius:4px;padding:17px 24px;box-shadow:none}.btn span{margin-left:20px}.btn.outline{border:1px solid #cad4ca}.eyebrow{font-size:10px;letter-spacing:2.3px;color:#8d773e}h1,h2{font-family:Georgia,'Times New Roman',serif}h2{font-size:40px;line-height:1.15}h1{font-size:67px;line-height:1.06;letter-spacing:-2.5px}p{font-size:14px;line-height:1.85}.section{padding-top:80px;padding-bottom:80px}.hero{background:linear-gradient(110deg,#f7f4ec,#eff1e7)}.hero-grid{grid-template-columns:1.02fr 1fr;gap:35px;min-height:590px;padding-top:60px;padding-bottom:55px}.hero h1 em{font-weight:normal;color:#7d8f71}.hero p{max-width:420px;font-size:15px}.hero-copy .eyebrow{display:flex;gap:10px;align-items:center}.small-line{width:24px;height:1px;background:var(--gold)}.actions{align-items:center;gap:24px;margin-top:32px}.hero-secondary{font-size:12px;padding:13px 0}.hero-footnote{display:flex;gap:18px;margin-top:48px;font-size:9px;letter-spacing:1.5px;color:#7b887d}.hero-art{isolation:isolate;min-height:420px}.hero-orbit{position:absolute;width:380px;height:380px;border-radius:50%;background:#e1e6d8;right:10px;z-index:-1}.hero-photo{border-radius:150px 150px 10px 10px;transform:rotate(-6deg);box-shadow:none;max-height:340px;object-fit:contain;background:#dedbd8}.hero-art-label{position:absolute;top:0;left:10px;font-size:9px;letter-spacing:2px;color:#84907f}.hero-product-caption{position:absolute;bottom:5px;left:10%;right:0;display:flex;justify-content:space-between;align-items:center;background:#fff;padding:21px 24px;border-radius:3px;box-shadow:0 10px 25px #12392d08}.hero-product-caption small{display:block;font-size:8px;letter-spacing:1.7px;margin-bottom:10px;color:#8a8f7f}.hero-product-caption strong{font-family:Georgia,serif;font-weight:normal;font-size:21px}.hero-product-caption>a{border:1px solid #e3e8dc;border-radius:50%;padding:10px 14px}.trust-grid{padding-top:24px;padding-bottom:24px}.trust-grid div{font-size:12px}.trust-grid small{font-size:10px}.categories{gap:24px}.category{padding:25px;background:#f0f3ec;border-radius:5px;display:block}.category strong{font-family:Georgia,serif;font-weight:400;font-size:25px;display:flex;justify-content:space-between}.category .frame-photo{height:150px;object-fit:contain;border-radius:5px}.category small{font-size:12px}.category-art{display:flex;width:100%;height:100%;min-height:150px;flex-direction:column;justify-content:center;align-items:center;color:#42674f}.category-art svg{width:85%;height:130px}.category-art>span{font-size:8px;letter-spacing:1.2px;opacity:.6;margin-top:4px}.product{padding:0 0 18px;border-radius:6px;border:1px solid #edf0e8;box-shadow:none;overflow:hidden}.product:hover{box-shadow:0 10px 24px #163c2b0b;transform:translateY(-3px)}.product-art{width:100%;border:0;border-radius:0;background:#f2f3ec;aspect-ratio:1.28;display:block;position:relative;padding:0;cursor:pointer}.product-open .frame-photo{width:100%;height:100%;object-fit:contain;background:#edeae3}.product-open .category-art{background:linear-gradient(130deg,#f2f4ed,#e8ecdf)}.product h3,.product>p,.product-bottom,.product-meta{margin-left:16px;margin-right:16px}.product h3{margin-top:8px;margin-bottom:8px;font-size:14px}.product-meta{margin-top:16px;font-size:9px;text-transform:uppercase;letter-spacing:1.1px;color:#85917d}.title-button{padding:0;border:0;background:none;text-align:left;color:var(--ink);font-weight:600;line-height:1.4;font-size:14px}.title-button:hover{text-decoration:underline}.product p{font-size:11px;margin-bottom:17px}.product-bottom strong{font-size:14px}.quantity{background:#f0f3ec;border:1px solid #e1e8dc;border-radius:4px;padding:0}.quantity button{border-radius:2px;width:28px;height:31px;font-size:16px}.sample{top:12px;left:12px;font-size:7px;letter-spacing:.7px;background:#fffffff0;padding:6px 8px}.supply-section{background:#f8f9f4}.supply-links{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.supply-links a{display:grid;gap:13px;border-top:1px solid #d9dfd1;padding-top:24px;color:#5c7563;font-size:22px}.supply-links a>span{font-size:10px;color:#a18d54}.supply-links strong{font:23px Georgia,serif;color:#264b36}.supply-links small{font-size:11px;line-height:1.6}.wholesale{background:#164b38}.wholesale-grid{padding-top:60px;padding-bottom:60px;gap:80px}.wholesale h2{font-size:43px}.story-art{border-radius:5px}.contact-strip h3{font-size:27px}footer{background:#f6f7f1}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid p,.footer-grid a{font-size:12px}.footer-bottom a{display:inline}.page-title{background:linear-gradient(110deg,#f7f5ed,#eff2e7);padding:48px 0}.page-title h1{font-size:49px;letter-spacing:-1.6px}.shop-subintro{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:20px;padding-bottom:12px}.shop-subintro p{margin:0;font-size:13px}.shop-subintro .text-link{font-size:11px}.shop-grid{grid-template-columns:210px minmax(0,1fr);gap:35px;margin-top:0;background:#fff;border-radius:0;padding-top:25px;align-items:start}.filters{padding:22px 18px;background:#f7f8f2;border-radius:5px;box-shadow:none}.filters h3{font-size:13px;margin:0}.filter-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.filter-heading .text-link{font-size:10px;border:0;padding:0}.filters label{font-size:11px;font-weight:600;margin-bottom:20px}.filters select{margin-top:9px;width:100%;min-height:40px;font-weight:400;font-size:12px;padding:10px 30px 10px 10px;border:1px solid #dde4d6;outline:0!important;box-shadow:none!important;border-radius:3px;background-color:#fff}.filters select:focus-visible{border-color:#526f54;background-color:#edf2e7}.filters .notice{font-size:10px}.shop-grid .products{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.shop-toolbar{display:flex;gap:15px;align-items:center;margin-bottom:20px}.search-box{flex:1}.search-box input{width:100%;padding:14px;border:1px solid #e1e5db;border-radius:4px;background:#fff;font-size:12px}.sort-label{font-size:10px;color:#74816e;display:flex;gap:8px;align-items:center}.sort-label select{padding:11px;border:1px solid #e1e5db;background:#fff;font-size:11px;color:var(--green);border-radius:4px}#result-count{font-size:11px;color:#6a7c69;margin-bottom:18px}#active-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.filter-chip{padding:7px 10px;border:0;border-radius:3px;background:#edf2e7;color:var(--green);font-size:10px}.filter-chip span{margin-left:8px}.empty-catalogue{grid-column:1/-1;padding:45px;background:#f7f8f2;border-radius:6px}.empty-catalogue h2{font-size:30px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}#product-detail{width:min(730px,94vw);border-radius:8px;padding:28px}#product-detail h2{font-size:32px;margin-top:26px}.detail-art{background:#f0f3eb;border-radius:5px;padding:20px;max-height:310px}.detail-art img{display:block;width:100%;height:245px;object-fit:contain}.detail-art .category-art{height:240px}.detail-art .category-art svg{height:190px}.specs{display:grid;grid-template-columns:1fr 1fr;font-size:12px;gap:0 25px}.specs>div{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #edf0e8}.specs dt{color:#7a8673}.specs dd{margin:0;text-align:right}.detail-bottom{display:flex;justify-content:space-between;align-items:center;margin:25px 0}.detail-bottom strong{font-size:24px}.about-menu-list{border-radius:5px}.about-menu-list a{font-size:12px}.careers-intro{max-width:560px}
@media(min-width:1050px){.nav{display:flex}.links{order:0;margin-left:auto;flex-wrap:nowrap}.nav>a{flex-shrink:0}}
@media(max-width:1050px){.wrap{padding-left:30px;padding-right:30px}h1{font-size:52px}.hero-grid{gap:25px}.hero-orbit{width:300px;height:300px}.hero-footnote{gap:10px;font-size:8px}.shop-grid{grid-template-columns:180px minmax(0,1fr);gap:22px}.shop-grid .products{grid-template-columns:repeat(2,minmax(0,1fr))}.supply-links{grid-template-columns:repeat(2,1fr)}.nav{height:auto;min-height:100px}.sort-label{display:block}.shop-toolbar{align-items:end}.hero-product-caption strong{font-size:18px}}
@media(max-width:700px){.wrap{padding-left:20px;padding-right:20px}.hero-grid{grid-template-columns:1fr;padding-top:40px;gap:35px}.hero h1{font-size:48px}.hero-art{min-height:310px}.hero-photo{max-height:260px;width:94%}.hero-art-label{font-size:8px}.hero-product-caption{bottom:0;left:5%;padding:17px}.hero-footnote{margin-top:28px}.section{padding-top:45px;padding-bottom:45px}.nav{gap:5px 14px;padding-top:10px;padding-bottom:14px}.logo{width:115px;height:60px}.links{gap:7px 13px}.links button{font-size:11px}.cart-btn{padding:10px 12px}.categories{grid-template-columns:1fr;gap:16px}.category{padding:20px;display:block}.category .frame-photo{height:140px;margin:15px 0}.category-art{height:160px}.section-head{gap:12px}.section-head h2{font-size:31px}.section-head .text-link{font-size:11px}.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product h3,.product>p,.product-bottom,.product-meta{margin-left:11px;margin-right:11px}.title-button{font-size:12px}.product-meta{font-size:8px}.product-bottom{gap:10px;flex-wrap:wrap}.supply-links{gap:25px 20px}.supply-links strong{font-size:21px}.wholesale-grid{grid-template-columns:1fr;gap:25px}.wholesale h2{font-size:34px}.wholesale-list{gap:15px}.shop-subintro{display:block}.page-title h1{font-size:39px}.shop-grid{grid-template-columns:1fr;padding-top:18px}.filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}.filter-heading,.filters .notice{grid-column:1/-1}.filters label{margin-bottom:15px}.shop-toolbar{display:block}.sort-label{margin-top:12px;display:flex;justify-content:flex-end}.shop-grid .products{gap:12px}.sample{font-size:6px;top:8px;left:8px}.specs{grid-template-columns:1fr}.detail-bottom{gap:15px}.detail-bottom strong{font-size:20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.product{transition:none}.product:hover{transform:none}}

.gallery-thumbnails{display:flex;gap:12px;margin:14px 0}.gallery-thumbnails button{border:1px solid #e3e8dc;background:#f6f5ef;padding:3px;border-radius:4px;cursor:pointer}.gallery-thumbnails button[aria-pressed="true"]{border-color:#517550;box-shadow:inset 0 0 0 1px #517550}.gallery-thumbnails img{display:block;width:90px;height:70px;object-fit:cover}.gallery-note{font-size:10px;color:#8a917d;margin-bottom:20px}.catalogue-download{margin:20px 0}.hero-photo{border-radius:180px 180px 8px 8px}.product-art .frame-photo{object-fit:cover}.detail-art{max-height:none;padding:0}.detail-art img{height:300px;object-fit:contain;background:#f0eee6}.hero-art-label{z-index:1}

.filters label[hidden],.filters select[hidden],.category-filter-hint[hidden]{display:none!important}
.category-filter-hint{padding:14px 0;font-size:12px;line-height:1.7;color:#6b7b68;grid-column:1/-1}
/* Fit catalogue images completely; zoom only on devices with a hover pointer. */
.product-art.product-open{overflow:hidden;display:grid;place-items:center;aspect-ratio:1.28;background:#f1eee6}
.product-art.product-open .frame-photo{display:block;width:100%;height:100%;object-fit:contain;object-position:center;padding:8px;transform:scale(1);transition:transform .4s cubic-bezier(.2,.6,.3,1)}
.category{overflow:hidden}.category .frame-photo{object-fit:contain;transition:transform .4s ease}
.detail-art{overflow:hidden;display:grid;place-items:center;min-height:260px;background:#f1eee6}
.detail-art .frame-photo{display:block;width:auto;max-width:100%;height:auto;max-height:340px;object-fit:contain;object-position:center;transition:transform .4s ease}
.gallery-thumbnails img{object-fit:contain;background:#f1eee6}
@media(hover:hover) and (pointer:fine){
  .product-open:hover .frame-photo,.product-open:focus-visible .frame-photo{transform:scale(1.1)}
  .category:hover .frame-photo{transform:scale(1.06)}
  .detail-art:hover .frame-photo{transform:scale(1.12)}
}
@media(prefers-reduced-motion:reduce){
  .product-art.product-open .frame-photo,.category .frame-photo,.detail-art .frame-photo{transition:none;transform:none!important}
}

.shop-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:36px 0 15px;padding-top:24px;border-top:1px solid #e3e8dd}
.shop-pagination[hidden]{display:none}
.shop-pagination button{border:1px solid #e0e6d9;background:#fff;color:var(--green);padding:10px 14px;border-radius:4px;font-size:12px}
.shop-pagination button:hover:not(:disabled){background:#eef3e8}
.shop-pagination button[aria-current="page"]{background:var(--green);border-color:var(--green);color:#fff}
.shop-pagination button:disabled{opacity:.35;cursor:default}
.page-numbers{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}
#result-count{scroll-margin-top:24px}
@media(max-width:600px){.shop-pagination{flex-wrap:wrap;justify-content:center;gap:14px}.page-numbers{order:3;width:100%}.shop-pagination button{padding:10px 12px}}

/* Give text fields consistent rounded corners without changing their focus size. */
.form input:not([type="checkbox"]):not([type="radio"]),
.form select,.form textarea,.filters select,.search-box input,.sort-label select{
  border-radius:12px;
}

/* Search and sorting have independent space; neither can overlap the other. */
.shop-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 210px;align-items:center;gap:20px}
.search-box{min-width:0;width:100%}
.search-box input{display:block;width:100%;min-width:0;min-height:46px}
.sort-label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin:0;min-width:0;white-space:nowrap;font-size:12px}
.sort-label select{display:block;width:100%;min-width:0;min-height:46px;margin:0;padding:12px 32px 12px 12px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='m3 5 4 4 4-4' fill='none' stroke='%235b7465' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
@media(max-width:800px){.shop-toolbar{grid-template-columns:minmax(0,1fr);gap:14px}.sort-label{justify-self:end;width:230px}}
@media(max-width:460px){.sort-label{justify-self:stretch;width:100%}}

/* Fine logo-gold field borders, with no extra ring or change in size. */
.form input:not([type="checkbox"]):not([type="radio"]),
.form select,.form textarea,.filters select,.search-box input,.sort-label select{
  border:1px solid var(--gold);
}
.form input:not([type="checkbox"]):not([type="radio"]):focus,
.form select:focus,.form textarea:focus,.filters select:focus,
.filters select:focus-visible,.search-box input:focus,.sort-label select:focus{
  border:1px solid #967b3d;
  border-width:1px!important;
  outline:none!important;
  outline-offset:0!important;
  box-shadow:none!important;
}

/* Category-first shop landing; product lists appear inside the selected category. */
#shop-catalogue[hidden],#shop-category-overview[hidden]{display:none!important}
.shop-category-overview{padding-top:35px}
.shop-category-overview .section-head p{max-width:620px;margin-bottom:0}
.shop-category-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.shop-category-card{display:block;border:1px solid #e6eade;border-radius:16px;background:#fff;overflow:hidden;transition:transform .25s,box-shadow .25s}
.shop-category-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #164e3b10}
.shop-category-image{position:relative;aspect-ratio:1.45;overflow:hidden;background:#f1eee6;display:grid;place-items:center}
.shop-category-image .frame-photo{display:block;width:100%;height:100%;object-fit:contain;padding:15px;transition:transform .4s ease}
.category-image-caption{position:absolute;left:16px;bottom:13px;background:#ffffffe8;padding:6px 10px;border-radius:20px;font-size:9px;color:#5b6c56}
.shop-category-copy{padding:23px}
.category-card-top{display:flex;justify-content:space-between;align-items:start;gap:15px}
.category-card-top h3{font:25px/1.15 Georgia,serif;margin:0;color:var(--green)}
.category-card-top>span{font-size:23px;color:#8c9c7d}
.shop-category-copy p{font-size:12px;line-height:1.8;margin:14px 0 20px;min-height:43px}
.category-card-link{font-size:11px;font-weight:600;color:var(--green)}
.back-categories{display:inline-block;margin:0 0 23px;font-size:12px}
@media(max-width:1000px){.shop-category-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){.shop-category-cards{grid-template-columns:1fr;gap:20px}.shop-category-copy{padding:20px}.shop-category-copy p{min-height:0}.shop-category-image{aspect-ratio:1.6}}
@media(hover:hover) and (pointer:fine){.shop-category-card:hover .frame-photo{transform:scale(1.08)}}
@media(prefers-reduced-motion:reduce){.shop-category-card,.shop-category-image .frame-photo{transition:none}.shop-category-card:hover,.shop-category-card:hover .frame-photo{transform:none}}

/* Direct WhatsApp enquiries on public pages. */
.whatsapp-enquiry{position:fixed;right:24px;bottom:24px;z-index:40;display:inline-flex;align-items:center;gap:12px;padding:13px 20px;border:1px solid #c5a350;border-radius:999px;background:#124b39;color:#fff;font-size:14px;font-weight:600;text-decoration:none;box-shadow:0 4px 18px #123b2926}
.whatsapp-enquiry:hover{background:#0b382a;color:#fff}.whatsapp-enquiry:focus-visible{outline:2px solid #c5a350;outline-offset:3px}
@media(max-width:550px){.whatsapp-enquiry{right:16px;bottom:16px;padding:11px 16px}footer{padding-bottom:85px}}

/* Compact floating WhatsApp icon. */
.whatsapp-enquiry{width:56px;height:56px;box-sizing:border-box;padding:0;justify-content:center;gap:0;border-radius:50%;background:#128c4a;color:#fff;border:1px solid #128c4a;box-shadow:0 4px 16px #123b2933}.whatsapp-enquiry svg{display:block;flex-shrink:0}.whatsapp-enquiry:hover{background:#0d713b;border-color:#0d713b}
@media(max-width:550px){.whatsapp-enquiry{width:52px;height:52px;padding:0}}

.footer-bottom{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px 24px}.footer-bottom .designer-credit{margin-left:auto;text-align:right;white-space:nowrap}
@media(max-width:600px){.footer-bottom{display:flex;flex-direction:column;align-items:stretch;gap:8px}.footer-bottom .designer-credit{align-self:flex-end;margin-left:auto;text-align:right}}

.call-action{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;padding:0;border-radius:50%;box-sizing:border-box}.call-action svg{display:block;flex-shrink:0}

/* Readable contact links in the footer. */
.footer-contact-links{display:grid;gap:10px}.footer-contact-links .footer-contact-link{display:flex;align-items:center;gap:12px;padding:10px 12px;margin:0;border:1px solid #ffffff26;border-radius:10px;text-decoration:none;transition:background .15s,border-color .15s}.footer-contact-link>svg{flex-shrink:0;color:#d9b85e}.footer-contact-link>span{display:grid;gap:3px;min-width:0}.footer-contact-link strong{font-size:12px;font-weight:600}.footer-contact-link>span>span{font-size:12px;overflow-wrap:anywhere}.footer-contact-links .footer-contact-link:hover{background:#ffffff0d;border-color:#d9b85e}.footer-contact-link:focus-visible{outline:2px solid #d9b85e;outline-offset:3px}.footer-payment-note{font-size:11px;margin-top:16px;opacity:.75}@media(prefers-reduced-motion:reduce){.footer-contact-link{transition:none}}

/* Keep the enquiry control inside the visible mobile viewport and safe area. */
a.whatsapp-enquiry{position:fixed;inset:auto max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) auto;z-index:1000;display:flex;visibility:visible;opacity:1;width:56px;height:56px;align-items:center;justify-content:center;padding:0;border-radius:50%;background:#128c4a;color:#fff;text-decoration:none;box-shadow:0 4px 16px #123b2933}
a.whatsapp-enquiry svg{display:block;width:28px;height:28px;fill:currentColor}

/* Contact cards remain readable on the light footer and narrow screens. */
.footer-grid>div{min-width:0}.footer-contact-links{min-width:0}
.footer-contact-links .footer-contact-link{min-height:56px;box-sizing:border-box;background:#fff;border-color:#dce3d8;color:#224b3b}
.footer-contact-link>svg{color:#947632}.footer-contact-link strong{font-size:13px;line-height:1.4}.footer-contact-link>span>span{font-size:13px;line-height:1.5;color:#536357}
.footer-contact-links .footer-contact-link:hover{background:#f1f4eb;border-color:#b59a53}
@media(max-width:600px){
 footer .footer-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 footer .footer-grid>div:first-child{grid-column:auto}
 .footer-contact-links{gap:10px;width:100%}
 .footer-contact-links .footer-contact-link{padding:12px 14px;gap:14px;min-height:64px}
 .footer-contact-link>span{gap:4px}
 .footer-contact-link strong,.footer-contact-link>span>span{font-size:14px}
 .footer-payment-note{line-height:1.6}
}
