/*
Theme Name: H2LO
Author: H2LO
Description: A quiet, one-page home for independent thinking and pioneering technology. Install and activate; no plugins or page setup required.
Version: 1.2.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: h2lo
*/
:root{--ink:#151515;--muted:#68686c;--line:#dedee1;--gutter:clamp(24px,4.2vw,72px)}
*{box-sizing:border-box}html{background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}body{margin:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,summary:focus-visible{outline:2px solid #222;outline-offset:6px}button,input{font:inherit}.site{max-width:1920px;margin:auto;min-height:100vh;min-height:100svh;display:flex;flex-direction:column}.admin-bar .site{min-height:calc(100svh - 32px)}.site-header{padding:34px var(--gutter) 0;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font-size:28px;letter-spacing:-1.5px;line-height:1;font-weight:500}.wordmark sub{font-size:.58em;vertical-align:-.22em;line-height:0}.contact-link{font-size:14px;white-space:nowrap;display:inline-flex;align-items:center;gap:8px;min-height:44px}.arrow{font-size:20px;font-weight:400}.home-main{flex:1;display:flex;align-items:center;justify-content:center;padding:70px var(--gutter) 76px}.hero{width:100%;max-width:1280px;text-align:center}.hero-art{display:block;width:100%;height:auto;margin:0 auto 22px}.hero h1{font-size:clamp(30px,3.05vw,48px);font-weight:400;letter-spacing:-.045em;line-height:1.15;margin:0 0 18px}.hero p{font-size:clamp(15px,1.4vw,20px);line-height:1.5;letter-spacing:-.025em;color:var(--muted);margin:0}.site-footer{margin:0 var(--gutter);padding:24px 0 26px;border-top:1px solid var(--line);font-size:12px;line-height:1.55}.footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;align-items:start}.company{font-weight:400}.company span{display:block}.company .details{margin-top:8px;white-space:pre-line;color:var(--muted)}.footer-note{text-align:center;color:var(--muted);margin:0}.footer-contact{justify-self:end}.footer-contact .contact-link{font-size:12px;min-height:0}.footer-contact .arrow{font-size:16px}.footer-bottom{display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:11px;margin-top:28px}.skip-link{position:absolute;left:24px;top:-100px;background:#fff;padding:14px;z-index:100000}.skip-link:focus{top:12px}.error-main{flex:1;display:grid;place-items:center;text-align:center;padding:100px var(--gutter)}.error-code{font-weight:300;font-size:clamp(100px,20vw,240px);line-height:1;letter-spacing:-.07em;margin:0;color:#242424}.error-main h1{font-size:clamp(24px,3vw,36px);font-weight:400;letter-spacing:-.04em;margin:24px 0 12px}.error-main p{color:var(--muted);line-height:1.6;margin:0 0 28px}.back-link{font-size:14px;display:inline-block;padding:12px 0}.legal-main{flex:1;width:100%;max-width:840px;margin:auto;padding:90px var(--gutter)}.legal-main h1{font-size:clamp(32px,4vw,48px);font-weight:400;letter-spacing:-.04em}.legal-content{line-height:1.8;overflow-wrap:anywhere}.legal-content h2{font-size:24px;font-weight:500;margin-top:40px}.legal-content a{text-decoration:underline}.legal-content img{max-width:100%;height:auto}
@media(min-width:1600px){.home-main{padding-top:90px;padding-bottom:90px}}
@media(max-width:640px){.site-header{padding-top:22px}.wordmark{font-size:25px}.contact-link{font-size:12px}.home-main{padding-top:72px;padding-bottom:84px}.hero-art{width:calc(100% + 24px);max-width:none;margin-left:-12px;margin-bottom:36px}.hero h1{font-size:32px;letter-spacing:-.05em}.hero p{max-width:260px;margin:auto;font-size:15px}.footer-main{grid-template-columns:1fr auto;gap:20px}.footer-note{grid-column:1 / -1;grid-row:2;text-align:left;font-size:11px}.footer-contact{grid-column:2;grid-row:1}.site-footer{padding-top:22px;padding-bottom:20px}.footer-bottom{margin-top:24px}.legal-main{padding-top:60px}.admin-bar .site{min-height:calc(100svh - 46px)}}

/* Laptop composition: size the artwork against viewport height, reserving
   space for the header, statement and complete footer. Never clip content. */
@media(min-width:641px){
 .site-header{padding-top:20px;flex-shrink:0}
 .home-main{padding-top:24px;padding-bottom:24px}
 .hero{max-width:1040px}
 .hero-art{width:auto;max-width:100%;height:auto;max-height:clamp(160px,calc(100vh - 420px),480px);max-height:clamp(160px,calc(100svh - 420px),480px);margin:0 auto 20px}
 .hero h1{font-size:clamp(30px,2.7vw,40px);margin-bottom:14px}
 .hero p{font-size:clamp(15px,1.3vw,18px)}
 .site-footer{padding-top:18px;padding-bottom:18px;flex-shrink:0}
 .footer-bottom{margin-top:18px}
 .admin-bar .hero-art{max-height:clamp(160px,calc(100svh - 466px),480px)}
}
