@font-face{font-family:Oswald;src:url("/assets/fonts/Oswald-Variable.ttf") format("truetype");font-weight:200 700;font-display:swap}
:root{
--canvas:#F6F6F1;
--surface:#FFFFFF;
--ink:#181B17;
--muted:#5A6254;
--border:#CBD1C3;
--action:#C4F03A;
--action-hover:#B2DA30;
--focus:#41620E;
--error:#A42922;
--error-bg:#FBECE8;
--success:#285439;
--success-bg:#EAF4E9;
--warning:#775811;
--warning-bg:#FEF3CC;
--overlay:#181B17E6;
--disabled:#E5E9DC;
--space-4:4px;
--space-8:8px;
--space-12:12px;
--space-16:16px;
--space-20:20px;
--space-24:24px;
--space-32:32px;
--space-40:40px;
--space-48:48px;
--space-64:64px;
--space-80:80px;
--space-96:96px;
--text-brand:30px;
--text-hero:80px;
--text-h1:56px;
--text-h2:40px;
--text-h3:28px;
--text-h4:24px;
--text-lead:20px;
--text-body:18px;
--text-strong:18px;
--text-nav:17px;
--text-breadcrumbs:16px;
--text-section-label:17px;
--text-card-title:27px;
--text-card-category:16px;
--text-contact:18px;
--text-label:17px;
--text-input:18px;
--text-hint:16px;
--text-error:16px;
--text-button:17px;
--text-table-header:17px;
--text-table-data:17px;
--text-caption:16px;
--text-date:16px;
--text-notice:17px;
--text-empty:18px;
--text-admin-heading:44px;
--text-status:16px;
--text-comment-author:17px;
--text-comment-body:17px;
--text-count:16px;
--text-credit:16px;
--container-width:1320px;
--article-width:920px;
--field-height:56px;
--textarea-height:144px;
--button-height:52px;
--target-size:44px;
--checkbox-size:20px;
--hero-plate-height:140px;
--card-plate-height:180px;
--detail-plate-height:280px;
--gallery-height:520px;
--table-cell-min:120px;
--menu-min-width:280px;
--menu-max-width:480px;
}
.wordmark{font-family:Oswald,Arial,sans-serif;font-size:var(--text-brand);font-weight:600;line-height:1.05;letter-spacing:-0.5px;color:var(--ink);text-transform:uppercase;}
.hero-title{font-family:Oswald,Arial,sans-serif;font-size:var(--text-hero);font-weight:600;line-height:1.02;letter-spacing:-1px;color:var(--ink);}
h1{font-family:Oswald,Arial,sans-serif;font-size:var(--text-h1);font-weight:600;line-height:1.05;letter-spacing:-0.4px;color:var(--ink);}
h2{font-family:Oswald,Arial,sans-serif;font-size:var(--text-h2);font-weight:600;line-height:1.12;letter-spacing:-0.2px;color:var(--ink);}
h3{font-family:Oswald,Arial,sans-serif;font-size:var(--text-h3);font-weight:600;line-height:1.15;letter-spacing:0px;color:var(--ink);}
h4{font-family:Oswald,Arial,sans-serif;font-size:var(--text-h4);font-weight:600;line-height:1.2;letter-spacing:0px;color:var(--ink);}
.lead{font-family:Verdana,Arial,sans-serif;font-size:var(--text-lead);font-weight:400;line-height:1.55;letter-spacing:0px;color:var(--ink);}
body{font-family:Verdana,Arial,sans-serif;font-size:var(--text-body);font-weight:400;line-height:1.65;letter-spacing:0px;color:var(--ink);}
strong,b{font-family:Verdana,Arial,sans-serif;font-size:var(--text-strong);font-weight:700;line-height:1.65;letter-spacing:0px;color:var(--ink);}
nav,a{font-family:Verdana,Arial,sans-serif;font-size:var(--text-nav);font-weight:400;line-height:1.4;letter-spacing:0px;color:var(--ink);}
.breadcrumbs{font-family:Verdana,Arial,sans-serif;font-size:var(--text-breadcrumbs);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--muted);}
.section-label{font-family:Verdana,Arial,sans-serif;font-size:var(--text-section-label);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--muted);}
.card-title{font-family:Oswald,Arial,sans-serif;font-size:var(--text-card-title);font-weight:600;line-height:1.15;letter-spacing:0px;color:var(--ink);}
.card-category{font-family:Verdana,Arial,sans-serif;font-size:var(--text-card-category);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--muted);}
.header-contact,.header-contact a,.footer-main>div,.footer-main>div>a{font-family:Verdana,Arial,sans-serif;font-size:var(--text-contact);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--ink);}
label{font-family:Verdana,Arial,sans-serif;font-size:var(--text-label);font-weight:700;line-height:1.5;letter-spacing:0px;color:var(--ink);}
input,textarea,select{font-family:Verdana,Arial,sans-serif;font-size:var(--text-input);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--ink);}
.hint{font-family:Verdana,Arial,sans-serif;font-size:var(--text-hint);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--muted);}
.error{font-family:Verdana,Arial,sans-serif;font-size:var(--text-error);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--error);}
button,.button{font-family:Verdana,Arial,sans-serif;font-size:var(--text-button);font-weight:700;line-height:1.4;letter-spacing:0px;color:var(--ink);}
th{font-family:Verdana,Arial,sans-serif;font-size:var(--text-table-header);font-weight:700;line-height:1.5;letter-spacing:0px;color:var(--ink);}
td{font-family:Verdana,Arial,sans-serif;font-size:var(--text-table-data);font-weight:400;line-height:1.55;letter-spacing:0px;color:var(--ink);}
figcaption,.caption,.gallery-caption{font-family:Verdana,Arial,sans-serif;font-size:var(--text-caption);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--muted);}
.date{font-family:Verdana,Arial,sans-serif;font-size:var(--text-date);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--muted);}
.notice,.source-context{font-family:Verdana,Arial,sans-serif;font-size:var(--text-notice);font-weight:400;line-height:1.6;letter-spacing:0px;color:var(--ink);}
.empty{font-family:Verdana,Arial,sans-serif;font-size:var(--text-empty);font-weight:400;line-height:1.6;letter-spacing:0px;color:var(--muted);}
.admin-main h1{font-family:Oswald,Arial,sans-serif;font-size:var(--text-admin-heading);font-weight:600;line-height:1.1;letter-spacing:0px;color:var(--ink);}
.status{font-family:Verdana,Arial,sans-serif;font-size:var(--text-status);font-weight:700;line-height:1.5;letter-spacing:0px;color:var(--ink);}
.comment-author{font-family:Verdana,Arial,sans-serif;font-size:var(--text-comment-author);font-weight:700;line-height:1.5;letter-spacing:0px;color:var(--ink);}
.comment-body{font-family:Verdana,Arial,sans-serif;font-size:var(--text-comment-body);font-weight:400;line-height:1.6;letter-spacing:0px;color:var(--ink);}
.pagination,.count{font-family:Verdana,Arial,sans-serif;font-size:var(--text-count);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--muted);}
.credit{font-family:Verdana,Arial,sans-serif;font-size:var(--text-credit);font-weight:400;line-height:1.5;letter-spacing:0px;color:var(--muted);}

*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas)}h1,h2,h3,h4{margin:0 0 var(--space-24);overflow-wrap:anywhere}p{margin:0 0 var(--space-24)}a{color:var(--ink);text-decoration:underline;text-underline-offset:var(--space-4);overflow-wrap:anywhere}a:hover{text-decoration-thickness:2px}h1 a,h2 a,h3 a,h4 a{font:inherit;color:inherit}button,.button{min-height:var(--button-height);padding:var(--space-12) var(--space-20);border:1px solid transparent;border-radius:var(--space-4);background:var(--action);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;transition:background .16s ease}button:hover,.button:hover{background:var(--action-hover)}button:disabled{background:var(--disabled);color:var(--muted);cursor:wait}.secondary{background:var(--surface);border-color:var(--border)}.secondary:hover{background:var(--canvas)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{position:absolute;left:var(--space-20);top:0;transform:translateY(-150%);padding:var(--space-16);background:var(--action);z-index:20}.skip-link:focus{transform:none}.site-header,.public-main,.admin-main,footer{width:calc(100% - 120px);max-width:var(--container-width);margin-inline:auto}.site-header{padding-block:var(--space-24) var(--space-32);border-bottom:1px solid var(--border)}.header-top{display:flex;align-items:center;gap:var(--space-40);justify-content:space-between}.wordmark{white-space:nowrap;text-decoration:none;flex-shrink:0}.header-contact{display:flex;gap:var(--space-48);justify-content:space-between;margin-top:var(--space-24)}.navigation{flex:1}.navigation>summary{display:none}.navigation>nav{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-20);flex-wrap:wrap}.navigation nav>a,.nav-group>summary{padding:var(--space-12) 0;min-height:var(--target-size)}.nav-group{position:relative}.nav-group>summary{cursor:pointer;text-decoration:underline;text-underline-offset:var(--space-4);list-style:none}.nav-group>summary::after{content:'⌄';margin-left:var(--space-8)}.nav-panel{position:absolute;top:100%;left:0;z-index:10;background:var(--surface);border:1px solid var(--border);padding:var(--space-16);min-width:var(--menu-min-width);max-width:min(var(--menu-max-width),90vw);max-height:80vh;overflow:auto}.nav-panel a{display:block;padding:var(--space-12) 0;min-height:var(--target-size)}.admin-navigation{display:flex;gap:var(--space-20);align-items:center;flex-wrap:wrap}.admin-navigation form{margin:0}.public-main,.admin-main{padding-block:var(--space-48) var(--space-64)}.hero{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-48);align-items:start;margin-bottom:var(--space-48)}.hero-title{margin-bottom:var(--space-24)}.hero .lead{max-width:580px;margin-bottom:var(--space-40)}.hero-board{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24)}.hero-item{text-decoration:none}.hero-item .image-plate{height:var(--hero-plate-height)}.hero-item .caption{margin-top:var(--space-12)}.image-plate{height:var(--card-plate-height);display:flex;align-items:center;justify-content:center;background:var(--surface);padding:var(--space-12)}.image-plate img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}.source-context,.notice{padding:var(--space-20);border:1px solid var(--border);background:var(--surface);margin-bottom:var(--space-32)}.success{background:var(--success-bg);color:var(--success)}.error-notice{background:var(--error-bg);color:var(--error)}.public-main>section{margin-bottom:var(--space-48)}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-32) var(--space-24);margin-bottom:var(--space-32)}.product-card{min-width:0}.product-link{text-decoration:none;display:block}.card-title{margin:var(--space-20) 0}.card-action{display:inline-block;padding-block:var(--space-12);min-height:var(--target-size);text-decoration:underline}.product-link:hover .card-title{text-decoration:underline}.category-filter{display:flex;flex-wrap:wrap;gap:var(--space-12);margin-bottom:var(--space-32)}.category-filter a{padding:var(--space-12) var(--space-20);border:1px solid var(--border);border-radius:var(--space-24);min-height:var(--target-size);background:var(--surface)}.article{max-width:var(--article-width);margin-bottom:var(--space-48)}.catalog-article{max-width:none}.article>*:empty{display:none}.article::after{content:"";display:block;clear:both}.image-link{max-width:100%}.primary-visual{float:left;width:46%;min-height:var(--detail-plate-height);margin:0 var(--space-32) var(--space-24) 0!important;background:var(--surface);display:flex;align-items:center;justify-content:center;padding:var(--space-12)}.primary-visual img{width:auto;height:auto;max-width:100%;max-height:var(--detail-plate-height)}.product-detail-layout .table-scroll{clear:both}.article img{max-width:100%;height:auto;vertical-align:middle}.article p,.article li{overflow-wrap:anywhere}.article h2,.article h3{margin-top:var(--space-32)}.article ul,.article ol{padding-left:var(--space-24)}.article li{margin-bottom:var(--space-12)}.article figure{margin:var(--space-24) 0}.article .product-card h3{margin-top:var(--space-20)}.article .product-card a:has(>img){display:flex;align-items:center;justify-content:center;background:var(--surface);min-height:var(--card-plate-height);padding:var(--space-12)}.article .product-card img{max-height:var(--card-plate-height);width:auto;height:auto}.article .rich-product-card{padding-block:var(--space-32);margin-bottom:var(--space-32);border-bottom:1px solid var(--border)}.rich-product-card>h2{margin-top:0}.gallery-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-24);padding:0!important;list-style:none}.gallery-group li{margin:0}.table-scroll{overflow:auto;max-width:100%;margin-block:var(--space-24);border:1px solid var(--border)}table{border-collapse:collapse;width:100%;background:var(--surface)}th,td{padding:var(--space-12) var(--space-16);border:1px solid var(--border);vertical-align:top;min-width:var(--table-cell-min)}td p{margin:0}th{font-weight:700}table img{max-width:100%}.breadcrumbs{display:flex;gap:var(--space-16);flex-wrap:wrap;margin-bottom:var(--space-24)}.source-brand{margin:var(--space-32) 0 var(--space-48)}.source-brand img{max-width:100%;height:auto}.source-brand figcaption{margin-top:var(--space-12)}.request-panel,.comment-panel,.comments{max-width:var(--article-width);margin-block:var(--space-48)}.field{margin-bottom:var(--space-24)}label{display:block;margin-bottom:var(--space-8)}input,textarea,select{width:100%;min-height:var(--field-height);padding:var(--space-16);border:1px solid var(--border);border-radius:var(--space-4);color:var(--ink);background:var(--surface)}input,select{height:var(--field-height);padding:var(--space-12) var(--space-16)}textarea{min-height:var(--textarea-height);resize:vertical}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--error)}.checkbox{display:flex;gap:var(--space-12);align-items:flex-start;min-height:var(--target-size);margin-block:var(--space-24);font-size:var(--text-body);font-weight:400;line-height:1.65}.checkbox input{width:var(--checkbox-size);height:var(--checkbox-size);min-height:var(--checkbox-size);padding:0;flex:0 0 var(--checkbox-size);margin:var(--space-4) 0 0;accent-color:var(--action)}.hint{margin-top:var(--space-20)}.error{margin:var(--space-8) 0}.trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}.search-form,.filter-form{max-width:var(--article-width);margin-bottom:var(--space-32)}.search-form button,.filter-form button{margin-top:var(--space-20)}.search-result{max-width:var(--article-width);border-bottom:1px solid var(--border);padding-block:var(--space-24)}.search-result h2{font-size:var(--text-card-title)}.public-comment{background:var(--surface);border:1px solid var(--border);padding:var(--space-24);margin-block:var(--space-24)}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.public-comment .comment-author{margin-bottom:var(--space-8)}.form-panel{max-width:var(--article-width);border:1px solid var(--border);background:var(--surface);padding:var(--space-24);margin-bottom:var(--space-32)}.form-panel label:not(.checkbox){margin-bottom:var(--space-24)}.form-panel label input,.form-panel label select,.form-panel label textarea{margin-top:var(--space-8)}.request-details{max-width:var(--article-width);display:grid;grid-template-columns:220px 1fr;gap:var(--space-12) var(--space-24);margin:var(--space-24) 0 var(--space-32)}.request-details dt{font-weight:700}.request-details dd{margin:0;overflow-wrap:anywhere}.revision-picker{display:flex;flex-direction:column;gap:var(--space-16);margin-bottom:var(--space-32)}.revision-content section{padding-block:var(--space-24);border-bottom:1px solid var(--border);overflow-wrap:anywhere}.revision-content img{max-width:100%;height:auto}.revision-content table{max-width:100%}.admin-main .table-scroll{margin-bottom:var(--space-32)}.empty{margin-block:var(--space-24)}.pagination{margin-block:var(--space-24)}.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-48);padding-block:var(--space-32)}footer{border-top:1px solid var(--border)}footer nav{display:flex;flex-direction:column;gap:var(--space-16)}footer p{margin-bottom:var(--space-16)}.credit{border-top:1px solid var(--border);padding-block:var(--space-24)}.credit a{font-size:inherit;color:inherit}dialog{border:0;padding:var(--space-24);background:var(--canvas);width:min(980px,calc(100% - var(--space-40)));max-height:calc(100dvh - var(--space-40));overflow:auto}dialog::backdrop{background:var(--overlay)}.gallery-toolbar{display:flex;gap:var(--space-16);margin-bottom:var(--space-32)}.gallery-toolbar [data-gallery-close]{margin-left:auto}.gallery-image{height:min(var(--gallery-height),60dvh);background:var(--surface);display:flex;align-items:center;justify-content:center}.gallery-image img{width:auto;height:auto;max-width:100%;max-height:100%}.gallery-caption,.gallery-status{margin-block:var(--space-20)}.contact-card{border:1px solid var(--border);background:var(--surface);padding:var(--space-24)}.bp-map{display:none}

@media (max-width:1099px){:root{--text-brand:28px;--text-hero:63px;--text-h1:48px;--text-h2:36px;--text-h3:27px;--text-h4:23px;--text-lead:19px;--text-body:18px;--text-strong:18px;--text-nav:17px;--text-breadcrumbs:16px;--text-section-label:16px;--text-card-title:26px;--text-card-category:16px;--text-contact:18px;--text-label:17px;--text-input:18px;--text-hint:16px;--text-error:16px;--text-button:17px;--text-table-header:16px;--text-table-data:16px;--text-caption:16px;--text-date:16px;--text-notice:16px;--text-empty:18px;--text-admin-heading:39px;--text-status:16px;--text-comment-author:17px;--text-comment-body:17px;--text-count:16px;--text-credit:16px;}}
@media (max-width:699px){:root{--text-brand:26px;--text-hero:46px;--text-h1:40px;--text-h2:32px;--text-h3:26px;--text-h4:22px;--text-lead:18px;--text-body:17px;--text-strong:17px;--text-nav:17px;--text-breadcrumbs:16px;--text-section-label:16px;--text-card-title:25px;--text-card-category:16px;--text-contact:17px;--text-label:17px;--text-input:17px;--text-hint:16px;--text-error:16px;--text-button:17px;--text-table-header:16px;--text-table-data:16px;--text-caption:16px;--text-date:16px;--text-notice:16px;--text-empty:17px;--text-admin-heading:34px;--text-status:16px;--text-comment-author:17px;--text-comment-body:17px;--text-count:16px;--text-credit:16px;}}

@media(max-width:1099px){.site-header,.public-main,.admin-main,footer{width:calc(100% - var(--space-64))}.header-top{gap:var(--space-24);align-items:flex-start}.navigation>nav{gap:var(--space-16)}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{gap:var(--space-32)}.hero .lead{margin-bottom:var(--space-32)}.admin-navigation{gap:var(--space-16)}.footer-main{gap:var(--space-32)}}
@media(max-width:699px){.site-header,.public-main,.admin-main,footer{width:calc(100% - var(--space-40))}.site-header{padding-block:var(--space-24) var(--space-32)}.header-top{position:relative;align-items:center}.navigation{flex:0 0 auto}.navigation>summary{display:block;list-style:none;cursor:pointer;min-height:var(--target-size);padding-block:var(--space-8)}.navigation:not([open])>nav{display:none}.navigation>nav{position:absolute;top:52px;left:0;right:0;z-index:12;display:flex;align-items:stretch;flex-direction:column;gap:0;background:var(--surface);border:1px solid var(--border);padding:var(--space-20);max-height:80dvh;overflow:auto}.nav-group{width:100%}.nav-panel{position:static;min-width:0;max-width:none;border:0;padding:0 0 var(--space-12) var(--space-16);overflow:visible;max-height:none}.header-contact{flex-direction:column;gap:var(--space-12);margin-top:var(--space-24)}.public-main,.admin-main{padding-block:var(--space-32) var(--space-48)}.hero{grid-template-columns:1fr;gap:var(--space-32);margin-bottom:var(--space-32)}.hero-board{gap:var(--space-16)}.hero-item .image-plate{height:var(--hero-plate-height);padding:var(--space-8)}.hero .lead{margin-bottom:var(--space-24)}.public-main>section{margin-bottom:var(--space-32)}.catalog-grid{grid-template-columns:1fr;gap:var(--space-32)}.source-context,.notice{padding:var(--space-20)}.article{margin-bottom:var(--space-32)}.primary-visual{float:none;width:100%;margin:0 0 var(--space-24)!important}.gallery-group{gap:var(--space-16)}.request-panel,.comment-panel,.comments{margin-block:var(--space-32)}.request-details{grid-template-columns:1fr;gap:var(--space-8)}.request-details dd{margin-bottom:var(--space-16)}.form-panel{padding:var(--space-20)}.admin-table thead{display:none}.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{display:block;width:100%}.admin-table tr{border-bottom:1px solid var(--border);padding:var(--space-16)}.admin-table td{border:0;padding:var(--space-8) 0;min-width:0}.admin-table td:before{content:attr(data-label);display:block;font-weight:700;margin-bottom:var(--space-8)}.footer-main{grid-template-columns:1fr;gap:var(--space-32)}dialog{padding:var(--space-16)}.gallery-toolbar{gap:var(--space-8)}.gallery-toolbar button{padding-inline:var(--space-16);min-width:var(--target-size)}.gallery-toolbar button:disabled{cursor:default}.gallery-image{height:min(var(--gallery-height),55dvh)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
