:root { --ink:#202a30; --muted:#546975; --line:#d9e5ec; --panel:#fff; --paper:#fff; --gold:#ac490d; --deep:#124b70; --green:#22754a; --diamond:#124b70; --ice:#eef6fb; --saffron:#ac490d; --halo:#efc15b; }
* { letter-spacing:0; }
body { line-height:1.5; }
.cms-text { white-space:pre-line; overflow-wrap:anywhere; }
.brand { min-width:0; }
.brand > span { overflow-wrap:anywhere; }
.hero-inner { height:auto; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline:3px solid #2592c4; outline-offset:3px; }
.top-strip { color:#fff; }
.nav { background:#fff; }
.brand { color:var(--diamond); line-height:1.15; }
.brand-logo { width:88px; height:62px; object-fit:contain; flex-shrink:0; }
.brand small { display:block; margin-top:6px; font:11px Arial,sans-serif; text-transform:uppercase; color:#647682; }
.nav-inner { min-height:96px; }
.links a { padding:10px 0; border-bottom:2px solid transparent; }
.links a:hover { color:var(--saffron); border-bottom-color:var(--halo); }
.btn { transition:background .15s; }
.btn:hover { background:#8c3a08; border-color:#8c3a08; color:white; }
.btn.secondary { color:var(--diamond); border-color:var(--diamond); }
.btn.secondary:hover { color:#fff; background:var(--diamond); }
.badge { border-radius:4px; background:#fff0c4; color:#775310; }
.hero { position:relative; background:#f3f6f7; color:var(--ink); overflow:hidden; }
.hero-photo { position:absolute; right:0; top:0; width:55%; height:100%; object-fit:contain; }
.hero-inner { position:relative; display:flex; min-height:480px; padding:48px 0; }
.hero-copy { width:47%; }
.hero h1 { color:var(--diamond); font-size:54px; line-height:1.08; margin:20px 0; }
.hero p { color:var(--muted); font-size:17px; line-height:1.7; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.section { padding:52px 0; }
.section h2 { color:var(--diamond); }
.section-title p { margin-bottom:0; }
.collection-band { background:var(--ice); border-block:1px solid var(--line); }
a.card:hover { border-color:#93b4c9; }
.card-body { border-top:1px solid var(--line); }
.product-img { object-fit:contain; background:#f5f8fa; }
.products .product-title { min-height:2.7em; }
.categories .product-img { aspect-ratio:1; }
.categories .card-body { border-top:3px solid var(--halo); }
.footer { color:#fff; border-top:4px solid var(--halo); }
.footer .muted { color:#d6e6f0; }
.footer-logo { object-fit:contain; }
.footer p { line-height:1.8; }
.workshop-info { border-left:3px solid var(--halo); padding-left:28px; }
.detail-photo { width:100%; aspect-ratio:4/5; object-fit:contain; background:#f5f8fa; }
.split > *, .form-grid > *, .grid > * { min-width:0; }
h1,h2,h3,p,a { overflow-wrap:break-word; }
@media (min-width:1600px) { .hero-photo { right:calc((100% - 1400px)/2); width:700px; } }
@media (max-width:900px) {
    .brand { font-size:21px; }
    .hero h1 { font-size:42px; }
    .hero-inner { min-height:440px; height:auto; }
    .hero-copy { width:49%; }
    .hero-photo { width:49%; }
    .section-title { align-items:center; }
}
@media (max-width:560px) {
    .nav { position:relative; }
    .nav-inner { padding:12px 0; gap:8px; }
    .brand { font-size:22px; }
    .brand-logo { width:68px; height:48px; }
    .links { width:100%; justify-content:space-between; gap:12px; }
    .top-strip { font-size:11px; }
    .hero-inner { min-height:0; padding:26px 0 220px; }
    .hero-copy { width:100%; }
    .hero h1 { font-size:36px; max-width:330px; margin:12px 0; }
    .hero p { font-size:15px; margin:12px 0; }
    .hero-photo { top:auto; bottom:0; width:100%; height:210px; }
    .hero-actions { margin-top:16px; }
    .section { padding:32px 0; }
    h2 { font-size:28px; }
    .section-title { flex-wrap:wrap; gap:12px; }
    .categories { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
    .categories .card-body { padding:12px; }
    .categories .product-title { font-size:14px; }
    .workshop-info { margin-top:8px; }
}
