/*
Theme Name: HATCO Nordic
Description: Bespoke lightweight Scandinavian theme for Hatco ApS. Danish-first, accessible and responsive, with paired English pages.
Version: 2.5.1
Author: Hatco ApS
Text Domain: hatco-nordic
Requires at least: 6.6
Requires PHP: 8.0
License: GPL-2.0-or-later
*/
:root{--ink:#242824;--muted:#60665f;--paper:#f5f4ee;--white:#fff;--sage:#dce2d5;--green:#344a3c;--line:#d6d8cd;--kraft:#e7decd;--max:1380px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a,button,summary{-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}img,svg{max-width:100%;height:auto}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #476846;outline-offset:5px}a:hover{color:var(--green)}::selection{background:var(--sage)}h1,h2,h3,p{margin:0}p+p{margin-top:16px}.wrap{width:min(calc(100% - 96px),var(--max));margin-inline:auto}.skip{position:absolute;top:-100px;left:12px;background:var(--ink);color:white;padding:14px;z-index:10000}.skip:focus{top:10px}.utility{border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.utility .wrap{display:flex;justify-content:space-between;align-items:center;min-height:37px;gap:10px}.utility-right{display:flex;align-items:center;gap:22px}.utility a{display:inline-flex;align-items:center;min-height:37px;text-decoration:none}.langs{display:flex;gap:14px}.langs a[aria-current]{font-weight:700;text-decoration:underline}.header{border-bottom:1px solid var(--line);background:var(--paper)}.header-row{min-height:var(--header-height);display:flex;align-items:center;gap:24px}.wordmark{font-weight:800;letter-spacing:-.065em;font-size:36px;line-height:1;text-decoration:none}.wordmark span{display:inline-block;width:8px;height:8px;background:var(--green);margin-left:5px}.desktop-nav{display:flex;align-items:center;gap:27px;margin-left:auto}.desktop-nav a{text-decoration:none;padding:15px 0;white-space:nowrap}.desktop-nav a[aria-current]{border-bottom:1px solid var(--ink)}.header-cta{margin-left:6px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:50px;padding:13px 22px;background:var(--green);color:#fff;border:1px solid var(--green);text-decoration:none;font-size:13px;letter-spacing:.01em;transition:background .16s,transform .16s}.button:hover{background:#24372b;color:#fff;transform:translateY(-2px)}.button.light{background:transparent;color:var(--ink);border-color:#8b9389}.button.light:hover{background:var(--sage)}.arrow{font-size:21px;line-height:1}.mobile-nav{display:none;margin-left:auto}.mobile-nav summary{cursor:pointer;list-style:none;min-height:46px;display:flex;align-items:center;gap:10px;padding:8px}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-panel{position:absolute;left:0;right:0;background:var(--paper);padding:24px;border-bottom:1px solid var(--line);z-index:90}.mobile-panel a{display:block;padding:12px 0;border-bottom:1px solid var(--line);text-decoration:none}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.14em;line-height:1.5;display:flex;align-items:center;gap:10px}.eyebrow:before{content:'';width:6px;height:6px;background:var(--green);flex-shrink:0}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:65px;align-items:center;padding-block:76px 64px}.hero h1{margin:23px 0 26px}.hero h1 em{font-family:Georgia,serif;color:#56654d}.lead{max-width:520px;color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero-foot{border-top:1px solid var(--line);margin-top:42px;padding-top:17px;display:flex;gap:20px;color:var(--muted);font-size:11px;letter-spacing:.06em}.hero-art{background:#e9e9df;position:relative;min-height:530px;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-art:before,.hero-art:after{content:'';position:absolute;background:#d1d4c8}.hero-art:before{height:1px;width:100%;top:67%}.hero-art:after{height:100%;width:1px;left:74%}.hero-art svg{width:90%;position:relative;z-index:1}.art-caption{position:absolute;bottom:20px;left:23px;right:23px;display:flex;justify-content:space-between;gap:8px;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#5d675b;z-index:2}.art-top{position:absolute;top:22px;left:24px;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.art-stamp{position:absolute;right:23px;top:21px;font-size:10px;border:1px solid #929d8c;border-radius:50%;width:54px;height:54px;display:grid;place-items:center}.intro-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;font-size:12px}.intro-strip span{display:flex;align-items:center;gap:12px}.intro-strip b{font-weight:400;color:#75836c;font-size:17px}.section{padding-block:var(--section-space)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:34px}.section-head .eyebrow{margin-bottom:16px}.section-head p{color:var(--muted);font-size:14px;max-width:310px}.text-link{font-size:13px;text-decoration:none;border-bottom:1px solid var(--ink);padding:9px 0;display:inline-flex;gap:35px;min-height:44px;align-items:center}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 24px}.category{text-decoration:none;display:block}.category-visual{aspect-ratio:1.45;background:#e6e7de;position:relative;overflow:hidden;display:grid;place-items:center;border:1px solid #dedfd4}.category:nth-child(2) .category-visual,.category:nth-child(4) .category-visual{background:var(--kraft)}.category:nth-child(3) .category-visual,.category:nth-child(6) .category-visual{background:var(--sage)}.category-visual svg{width:70%;height:75%;transition:transform .35s}.category:hover svg{transform:scale(1.045)}.category-no{position:absolute;top:17px;left:18px;font-size:10px;letter-spacing:.08em}.placeholder-label{position:absolute;bottom:13px;left:18px;font-size:8px;letter-spacing:.09em;text-transform:uppercase;color:#67705f}.category-label{display:flex;align-items:center;justify-content:space-between;padding:18px 0 8px;border-bottom:1px solid var(--line);gap:10px}.category p{font-size:12px;color:var(--muted);margin-top:9px}.about-panel{background:var(--sage);padding:var(--panel-space);display:grid;grid-template-columns:1fr 1fr;gap:32px}.about-panel .eyebrow{margin-bottom:26px}.about-panel p{font-size:15px;color:#475244}.about-panel h2{max-width:470px}.about-panel .text-link{margin-top:24px}.partner-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;display:flex;justify-content:space-between;align-items:center;gap:30px}.partner-row p{max-width:600px;font-size:13px;color:var(--muted)}.quote-band{background:var(--green);color:white;padding:var(--panel-space);display:flex;align-items:center;justify-content:space-between;gap:38px}.quote-band h2{max-width:680px}.quote-band p{font-size:13px;color:#d7dfd3;margin-top:18px}.quote-band .button{background:var(--paper);color:var(--ink);border-color:var(--paper);white-space:nowrap}.support{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:35px 0 55px}.support h3{margin-bottom:10px}.support p{font-size:13px;color:var(--muted);max-width:480px}.status{font-size:10px;letter-spacing:.1em;text-transform:uppercase;border:1px solid #a7afa0;display:inline-block;padding:7px 10px;margin-top:14px;color:#53624e}.site-footer{background:#e9e8e0;border-top:1px solid var(--line);padding:28px 0 18px}.footer-grid{display:grid;grid-template-columns:.85fr .85fr 1fr 1.2fr;gap:24px;align-items:start}.footer-grid>div{min-width:0}.footer-brand p{font-size:14px;line-height:1.65;max-width:220px;color:var(--muted)}.footer-company>p{font-size:14px}.footer-details{margin:12px 0 0}.footer-details>div+div{margin-top:10px}.footer-details dt{font-size:12px;font-weight:600;line-height:1.5}.footer-details dd{margin:0;font-size:14px;line-height:1.65;overflow-wrap:anywhere}.footer-grid .footer-details a{padding:2px 0}.footer-company>.text-link{margin-top:6px;min-height:36px}.footer-grid h2{text-transform:uppercase;margin:0 0 10px}.footer-grid ul{list-style:none;margin:0;padding:0;font-size:15px}.footer-grid li{margin:2px 0}.footer-grid a{display:inline-block;padding:6px 0;text-decoration:none}.footer-grid .pending{font-size:14px;line-height:1.9;color:var(--muted)}.footer-bottom{border-top:1px solid #c9cdc0;margin-top:20px;padding-top:16px;font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.page-hero{padding:var(--section-space) 0 30px;border-bottom:1px solid var(--line)}.breadcrumb{font-size:11px;color:var(--muted);margin-bottom:20px}.breadcrumb a{text-decoration:none}.page-hero .eyebrow{margin-bottom:14px}.page-hero h1{max-width:1000px;margin-bottom:18px}.page-hero .lead{max-width:680px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:32px}.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.flow article{border-top:1px solid #aeb8a7;padding-top:24px}.step{font-size:11px;color:#63765a;display:block;margin-bottom:32px}.flow h3{margin-bottom:18px}.flow p,.copy p{font-size:14px;line-height:1.85;color:var(--muted)}.notice{border-left:3px solid #758468;background:#e9ece3;padding:22px 26px;margin-top:30px;font-size:13px;color:#475343}.notice.urgent{border-color:#66513a;background:#ece3d6}.catalog-empty{margin-top:35px;border-block:1px solid var(--line);padding:40px 0;display:grid;grid-template-columns:1fr 1.3fr;gap:40px}.catalog-empty p{font-size:14px;color:var(--muted)}.pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.pills a{font-size:12px;padding:12px 18px;border:1px solid #aeb7a7;text-decoration:none;min-height:44px}.pills a:hover{background:var(--sage)}.detail-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.detail-list li{padding:20px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1.4fr;gap:20px;font-size:13px}.detail-list span{color:var(--muted)}.editor-content{max-width:900px;margin:40px auto;padding:0 24px}.editor-content>*+*{margin-top:22px}.error-page{min-height:50vh;padding-block:70px}.screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#wpadminbar{position:absolute!important}
@media(min-width:1600px){.hero{padding-block:94px}.hero-art{min-height:610px}}
@media(max-width:1150px){.wrap{width:calc(100% - 56px)}.desktop-nav{gap:15px}.header-row{gap:24px}.header-cta{display:none}.hero{gap:32px}.hero-art{min-height:480px}.about-panel{padding:var(--panel-space);gap:32px}.footer-grid{gap:24px}.hero-foot{gap:12px;font-size:10px}}
@media(max-width:900px){.desktop-nav{display:none}.mobile-nav{display:block}.header-row{min-height:var(--header-height)}.hero{gap:28px}.hero-art{min-height:440px}.hero-foot{flex-direction:column;gap:3px}.category-grid{grid-template-columns:repeat(2,1fr)}.section{padding-block:var(--section-space)}.about-panel{gap:32px;padding:var(--panel-space)}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{gap:32px}.flow{gap:22px}.quote-band{padding:var(--panel-space)}.utility{font-size:9px}.utility-right{gap:15px}}
@media(max-width:620px){.wrap{width:calc(100% - 36px)}.utility .wrap{min-height:36px}.utility-message{max-width:185px;font-size:8px;letter-spacing:.06em}.utility-account{display:none!important}.langs{gap:12px}.langs a{min-width:28px;justify-content:center;min-height:44px}.header-row{min-height:var(--header-height)}.wordmark{font-size:31px}.hero{grid-template-columns:1fr;padding-block:39px 33px;gap:32px}.hero h1{margin-block:21px}.actions{gap:10px;margin-top:26px}.button{font-size:12px;padding:13px 17px;gap:20px}.hero-foot{margin-top:29px;padding-top:15px;flex-direction:row;flex-wrap:wrap;gap:6px 16px}.hero-art{min-height:345px}.hero-art svg{width:80%}.art-caption{font-size:8px;left:18px;right:18px}.art-top{left:18px;font-size:9px}.intro-strip{grid-template-columns:1fr;gap:12px;padding-block:20px}.intro-strip span{font-size:11px}.section{padding-block:var(--section-space)}.section-head{align-items:start;flex-direction:column;gap:20px;margin-bottom:27px}.section-head p{max-width:100%}.category-grid{gap:25px 14px}.category-visual{aspect-ratio:1.05}.category-label{padding-block:14px 8px}.category-label .arrow{font-size:17px}.category p{font-size:11px}.category-no{left:11px;top:10px;font-size:9px}.placeholder-label{left:10px;bottom:9px;font-size:6px}.about-panel,.two-col,.flow,.support{grid-template-columns:1fr}.about-panel{padding:var(--panel-space);gap:32px}.partner-row{align-items:start;flex-direction:column;gap:18px}.quote-band{padding:var(--panel-space);flex-direction:column;align-items:start}.support{gap:28px;padding-block:30px 40px}.footer-grid{gap:24px}.footer-brand,.footer-grid>div:last-child{grid-column:1/-1}.footer-brand p{max-width:320px}.footer-bottom{margin-top:20px;font-size:12px}.site-footer{padding-top:24px}.page-hero{padding-block:32px 26px}.breadcrumb{margin-bottom:20px}.two-col{gap:32px}.flow{gap:30px}.step{margin-bottom:20px}.catalog-empty{grid-template-columns:1fr;gap:20px}.detail-list li{grid-template-columns:1fr;gap:6px}.pills{gap:7px}.pills a{padding:10px 12px;font-size:11px}}
@media(max-width:360px){.category-grid{grid-template-columns:1fr}.category-visual{aspect-ratio:1.5}.hero-art{min-height:290px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.actions .button{width:100%}}.desktop-nav>li{list-style:none;margin:0;padding:0}.desktop-nav .sub-menu{list-style:none;padding:12px;background:var(--paper);border:1px solid var(--line)}
@media(max-width:620px){.langs a{min-width:44px}.utility-message{min-width:0}.footer-grid a{min-height:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

@media(max-width:620px){.utility-cart{display:none!important}}

/* HATCO approved local brand assets */
.wordmark .hatco-site-logo{display:block;max-width:100%;height:auto}.hatco-image-hero{width:100%;height:clamp(300px,40vw,620px);overflow:hidden;background:#e9e5dc}.hatco-image-hero .hatco-hero-background{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;margin:0}.hatco-branded-home .hero{padding-top:48px}.header .wordmark:has(.hatco-site-logo){flex-shrink:0}
@media(max-width:900px){.hatco-image-hero{height:330px}}
@media(max-width:620px){.hatco-image-hero{height:300px}.hatco-branded-home .hero{padding-top:34px}}

/* Homepage only: one continuous image behind utility, navigation and brand hero. */
.hatco-home-masthead{position:relative;isolation:isolate;height:clamp(450px,42vw,640px);background:#e9e5dc}
.hatco-home-masthead>.hatco-image-hero{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.hatco-home-masthead>.utility,.hatco-home-masthead>.header{position:relative;z-index:2;background:transparent;border-color:rgba(52,74,60,.14);color:#28372c}
.hatco-home-masthead>.utility{background:rgba(245,244,238,.12)}
.hatco-home-masthead .header-row{gap:32px}

.hatco-home-masthead .desktop-nav a{padding-block:18px}
.hatco-home-masthead .header-cta{background:rgba(245,244,238,.6);color:#28372c;border-color:rgba(52,74,60,.5)}
.hatco-home-masthead .header-cta:hover{background:#344a3c;color:#fff}
.hatco-home-masthead .mobile-panel{background:#f5f4ee;box-shadow:0 12px 24px rgba(36,40,36,.08);border-color:#bcc5b4}
/* The supplied 1983x793 image has visible HATCO wordmark bounds x=659..1298,
   center=978.5 (13 source pixels left of the bitmap center). Container units
   reproduce object-fit:cover scaling: -13 * max(width/1983,height/793).
   The menu is positioned independently of the right-hand CTA; no pixel nudge. */
@media(min-width:901px){
 .hatco-home-masthead{container-type:size}
 .hatco-home-masthead .header-row{display:grid;grid-template-columns:minmax(0,1fr) auto}
 .hatco-home-masthead .desktop-nav{position:absolute;left:calc(50% + min(-0.6555723651cqw,-1.6393442623cqh));top:50%;transform:translate(-50%,-50%);margin:0}
 .hatco-home-masthead .header-cta{display:inline-flex;grid-column:2;grid-row:1;justify-self:end;margin:0}
}
@media(max-width:900px){.hatco-home-masthead{height:440px}.hatco-home-masthead .header-row{min-height:72px}}
@media(max-width:620px){.hatco-home-masthead{height:350px}.hatco-home-masthead .header-row{min-height:64px}.hatco-home-masthead .utility-message{max-width:160px}.hatco-home-masthead .mobile-nav summary{font-size:14px}.hatco-home-masthead .utility{background:rgba(245,244,238,.18)}}

@media(max-width:360px){.hatco-home-masthead{height:320px}}

/* Homepage service layout; typography lives in typography.css. */
.hero h1{max-width:650px;margin-block:20px 24px}
.hcb-home-services{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.hcb-home-services .category{padding-top:24px;text-decoration:none}
.hcb-home-services .category p{font-size:14px;line-height:1.7;margin-top:16px}
.hcb-home-services .category-label{align-items:start;min-height:64px}
.footer-grid{max-width:1240px;margin-inline:auto}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:28px}.hero .lead{max-width:650px}.hcb-home-services{grid-template-columns:1fr}.hcb-home-services .category-label{min-height:0}}
@media(max-width:620px){.hcb-home-services{gap:24px}}
