/* Solarman — complete presentation foundation. */
:root{--navy:#06265f;--ink:#173866;--blue:#0047cc;--blue-dark:#003cb7;--pale:#eaf5ff;--ice:#e1f1ff;--line:#c9e1f6;--white:#fff;--red:#d9151c;--yellow:#f5d95a;--text:#173866;--muted:#526781;--radius:5px;--content:1140px;--gutter:clamp(20px,3.35vw,48px);--space-1:8px;--space-2:16px;--space-3:24px;--space-4:40px;--space-5:64px;--space-6:96px;--font:"Noto Sans CJK JP","Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.75;word-break:normal;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6,p,ul,ol,figure{margin:0}h1,h2,h3,h4{color:var(--navy);font-weight:800;line-height:1.4;overflow-wrap:normal;line-break:strict}h1{font-size:clamp(34px,4.4vw,62px)}h2{font-size:clamp(28px,3.4vw,42px);letter-spacing:-.025em}h3{font-size:clamp(22px,2.15vw,28px)}h4{font-size:19px}p+ p{margin-top:12px}ul,ol{padding-left:1.4em}img{display:block;max-width:100%;height:auto}figure{max-width:100%}a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #bc6900;outline-offset:4px}main:focus{outline:none}strong{font-weight:800}.wp-block-group{box-sizing:border-box}.wp-block-group>*,.wp-block-group .wp-block-group__inner-container>*{max-width:100%}.wp-block-image{margin:0}.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.wp-block-button{display:block}.wp-block-button a,.site-cta,button[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:56px;padding:13px 28px;border:1px solid var(--blue);border-radius:var(--radius);background:linear-gradient(180deg,var(--blue),var(--blue-dark));color:var(--white);font-size:17px;font-weight:700;line-height:1.55;text-decoration:none;cursor:pointer;transition:background .18s,box-shadow .18s}.wp-block-button a:hover,.site-cta:hover,button[type=submit]:hover{background:#00349b;box-shadow:0 3px 10px #06265f26}.site-cta::after{content:'→'}.button-light a{background:white;color:var(--blue);border-color:white}.button-light a:hover{background:var(--pale)}.text-link{font-weight:700}.site-skip-link{position:absolute;top:8px;left:12px;transform:translateY(-160%);z-index:100;padding:10px 18px;background:#fff;color:var(--navy);border:2px solid var(--blue);border-radius:4px}.site-skip-link:focus{transform:none}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* The original artwork is the brand; the linked text remains its accessible name. */
.site-header{background:#fff;border-bottom:1px solid #aecdf0;position:relative;z-index:20}.site-header-inner{max-width:1340px;min-height:104px;margin:auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-brand{display:block;position:relative;width:258px;height:80px;flex:0 0 258px;background:url("assets/images/solarman-logo.png") left center/contain no-repeat}.site-brand-name,.site-brand-note{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-desktop-nav{display:flex;align-items:center;gap:22px}.site-desktop-nav nav{display:flex;align-items:center;gap:24px;margin-right:240px}.site-desktop-nav nav a{font-size:13px;white-space:nowrap;color:var(--navy);font-weight:700;text-decoration:none;padding:12px 0;border-bottom:2px solid transparent}.site-desktop-nav nav a[aria-current=page]{border-color:var(--blue)}.site-desktop-nav nav a:hover{color:var(--blue);border-color:var(--line)}.site-desktop-nav nav a:first-child,.site-desktop-nav nav a:last-child[href$="/contact/"]{display:none}.site-desktop-nav .site-cta{min-height:52px;font-size:14px;padding:12px 22px;white-space:nowrap}.site-mobile-menu{display:none}.header-phone{position:absolute;z-index:21;right:max(205px,calc((100vw - 1340px)/2 + 205px));top:23px;display:grid;grid-template-columns:46px 1fr;column-gap:12px;align-items:center;width:235px;line-height:1.35}.header-phone .phone-symbol{grid-row:1/3}.header-phone .phone-number{font-family:Arial,sans-serif;font-size:27px;font-weight:800;color:#080b10;text-decoration:none;white-space:nowrap}.header-phone .phone-hours{font-size:11px;color:#080b10;font-weight:700;margin:0}.phone-symbol{position:relative;display:block;width:46px;height:30px;overflow:hidden;flex:0 0 auto}.phone-symbol .wp-block-image,.phone-symbol figure{margin:0;position:static}.phone-symbol img{position:absolute;width:243px;max-width:none!important;height:auto;top:-32.4px;left:0}.site-footer{background:#fff;border-top:1px solid var(--line)}.site-footer-inner{max-width:1200px;padding:28px var(--gutter) 20px;margin:auto}.site-footer-top{display:flex;align-items:center;justify-content:space-between;gap:40px}.site-footer .site-brand{width:265px;flex-basis:265px;height:86px}.site-footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 26px}.site-footer nav a{font-size:13px;text-decoration:none;color:var(--ink)}.site-footer nav a:hover{text-decoration:underline}.site-footer-copy{font-size:13px;margin:18px 0;color:var(--ink)}.site-footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}.site-footer-bottom p{margin:0}
/* Native contact, receipt and validation surfaces. */
.sb-contact{background:var(--ice);padding:56px var(--gutter) 64px;min-height:620px}.sb-contact-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:64px;max-width:1140px;margin:auto;align-items:start}.sb-contact-copy h1{font-size:42px;margin-bottom:16px}.sb-contact-copy p{margin-top:12px}.sb-contact-copy .eyebrow{margin-top:0}.sb-contact-form{background:white;padding:28px 32px 32px;border-radius:8px;min-width:0}.sb-contact-form>p{font-size:14px;line-height:1.75;margin-bottom:20px}.sb-contact-form form{display:grid;grid-template-columns:1fr;gap:8px}.sb-contact-form label{font-size:15px;font-weight:700;color:var(--navy);margin-top:8px}.sb-contact-form input:not([type=checkbox]):not([type=hidden]),.sb-contact-form textarea{display:block;width:100%;min-width:0;min-height:48px;background:#fff;color:var(--navy);border:1px solid #9fabba;border-radius:2px;padding:10px 12px;font-size:16px;line-height:1.5}.sb-contact-form textarea{min-height:150px;resize:vertical}.sb-contact-form input:focus,.sb-contact-form textarea:focus{border-color:var(--blue)}.sb-contact-form .sb-privacy{font-size:13px;margin:12px 0 0}.sb-contact-form .sb-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;font-weight:500;line-height:1.65;margin:8px 0 14px;padding:8px 0;cursor:pointer}.sb-consent input{width:20px;height:20px;accent-color:var(--blue);flex-shrink:0;margin:1px 0 0}.sb-contact-form button{width:100%;margin-top:4px}.sb-trap{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}.sb-contact-status{border-left:4px solid var(--red);padding:14px 16px;background:#fff1f1;color:#922029}.sb-contact-status[data-success=true]{background:#edf8f2;color:#165536;border-color:#168054}.sb-contact-thanks .sb-contact-layout{display:block;max-width:820px}.sb-contact-thanks .sb-contact-copy{margin-bottom:28px}.sb-contact-thanks .sb-contact-form{padding:32px}.sb-contact-thanks h1{font-size:36px}.sb-contact-thanks{min-height:65vh}
/* News, archive, pagination, article and not-found states. */
.sb-page-intro{max-width:1140px;margin:auto;padding:64px 0 40px}.sb-page-intro h1{font-size:46px;margin-bottom:20px}.sb-eyebrow,.eyebrow{font-size:16px;letter-spacing:.06em;font-weight:500;color:var(--navy);line-height:1.5;margin:0 0 8px}.sitebuilder-news{max-width:1140px;margin:auto;padding:0 var(--gutter) 64px;min-height:65vh}.sitebuilder-news .sb-page-intro{border-bottom:2px solid var(--blue)}.sb-news-list{margin:0}.sb-news-row{display:grid;grid-template-columns:120px minmax(0,1fr) 32px;gap:24px;align-items:start;border-bottom:1px solid var(--line);padding:30px 8px;color:var(--ink);text-decoration:none}.sb-news-row:hover{background:var(--pale)}.sb-news-date{font-family:Arial,sans-serif;font-size:15px;font-weight:600;color:var(--blue);white-space:nowrap}.sb-news-row h2{font-size:23px;line-height:1.5;margin-bottom:8px}.sb-news-row p{font-size:15px}.sb-news-arrow{font-size:24px;color:var(--blue)}.sb-news-empty{padding:48px 0}.sb-news-empty h2{font-size:27px;margin-bottom:12px}.pagination{margin-top:40px}.pagination .nav-links{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:3px;text-decoration:none}.page-numbers.current{background:var(--blue);color:#fff}.sb-article{max-width:840px;padding:64px 0 24px;margin:auto}.sb-article header{border-bottom:2px solid var(--blue);padding-bottom:28px;margin-bottom:32px}.sb-article h1{font-size:40px;margin:8px 0 18px}.sb-article-body h2{font-size:30px;margin:36px 0 16px}.sb-article-body h3{font-size:24px;margin:28px 0 14px}.sb-article-body p,.sb-article-body ul,.sb-article-body ol{margin-bottom:20px}.sb-article-body img{margin:24px 0}.sb-article-back{display:inline-flex;align-items:center;min-height:48px;margin-top:28px;font-weight:700}.error404 .sb-page-intro{padding:80px var(--gutter);min-height:60vh}
@media(min-width:1200px) and (max-width:1250px){.site-header-inner{gap:16px;padding-left:20px;padding-right:20px}.site-brand{width:228px;flex-basis:228px}.site-desktop-nav{gap:16px}.site-desktop-nav nav{gap:17px;margin-right:229px}.site-desktop-nav nav a{font-size:12px}.header-phone{right:191px;width:225px}.site-desktop-nav .site-cta{padding:12px 18px}}
@media(max-width:1199px){.site-desktop-nav{display:none}.header-phone{display:none}.site-header-inner{min-height:84px;padding:10px 24px}.site-brand{width:216px;flex-basis:216px;height:64px}.site-mobile-menu{display:block}.site-mobile-menu summary{list-style:none;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:3px;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:10px}.site-mobile-menu summary::-webkit-details-marker{display:none}.site-mobile-menu summary::after{content:'＋';font-size:20px;line-height:1}.site-mobile-menu[open] summary::after{content:'−'}.site-mobile-menu nav{position:absolute;top:100%;left:0;right:0;background:white;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;padding:16px 24px 86px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #06265f14}.site-mobile-menu nav a{padding:13px 8px;border-bottom:1px solid var(--line);font-size:15px;color:var(--navy);font-weight:600;text-decoration:none;min-height:48px}.site-mobile-menu nav a[aria-current=page]{color:var(--blue);background:var(--pale)}.site-mobile-menu>.site-cta{position:absolute;top:calc(100% + 180px);left:32px;right:32px;min-height:48px;font-size:15px}.site-footer-top{align-items:flex-start}.site-footer nav{gap:14px 20px}.sb-contact-layout{gap:32px}.sb-contact-copy h1{font-size:36px}}
@media(max-width:767px){body{font-size:15px;line-height:1.8}h2{font-size:28px;line-height:1.45}h3{font-size:23px}.site-header-inner{min-height:78px;padding:8px 18px;gap:14px}.site-brand{width:199px;flex-basis:199px;height:62px}.site-mobile-menu summary{font-size:12px;padding:9px 10px}.site-mobile-menu nav{padding-left:20px;padding-right:20px}.site-mobile-menu>.site-cta{left:24px;right:24px}.wp-block-buttons{margin-top:20px}.wp-block-button a,.site-cta,button[type=submit]{font-size:15px;min-height:54px;padding:14px 20px}.site-footer-inner{padding:26px 20px 22px}.site-footer-top{display:block}.site-footer .site-brand{width:230px;height:74px}.site-footer nav{justify-content:flex-start;gap:10px 24px;margin-top:24px}.site-footer nav a{min-height:34px;display:flex;align-items:center}.site-footer-copy{font-size:12px;margin:18px 0}.site-footer-bottom{display:block;font-size:10px}.site-footer-bottom p+p{margin-top:5px}.sb-contact{padding:26px 20px 40px}.sb-contact-layout{display:flex;flex-direction:column;gap:24px}.sb-contact-copy,.sb-contact-form{width:100%}.sb-contact-copy h1{font-size:32px;margin-bottom:10px}.sb-contact-copy p{margin-top:8px}.sb-contact-form{padding:22px 20px}.sb-contact-form>p{font-size:13px;margin-bottom:12px}.sb-contact-form textarea{min-height:150px}.sb-contact-thanks .sb-contact-form{padding:24px}.sb-contact-thanks h1{font-size:29px}.sb-eyebrow,.eyebrow{font-size:13px}.sitebuilder-news{padding:0 20px 40px}.sb-page-intro{padding:34px 0 28px}.sb-page-intro h1{font-size:32px;margin:8px 0 12px}.sb-news-row{grid-template-columns:1fr 20px;gap:7px 16px;padding:24px 0}.sb-news-date{grid-column:1/-1;font-size:13px}.sb-news-row h2{font-size:21px}.sb-news-row p{font-size:14px}.sb-news-empty h2{font-size:24px}.sb-news-empty{padding:32px 0}.sb-article{padding:36px 0 20px}.sb-article h1{font-size:30px}.sb-article-body h2{font-size:25px}.sb-article-body h3{font-size:21px}.error404 .sb-page-intro{padding:48px 20px}.error404 h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Avoid duplicate contact navigation beside the dedicated CTA. */
.site-desktop-nav nav a[href$="/contact/"]{display:none}
.sb-contact-form textarea{height:170px}
@media(max-width:1199px){.site-mobile-menu:has(nav a:nth-child(7))>.site-cta{top:calc(100% + 236px)}}

/* Desktop spacing follows the reference's logo / navigation / phone / CTA rhythm. */
@media(min-width:1200px){.site-header-inner{gap:40px}.site-header .site-brand{width:258px;flex-basis:258px}.site-desktop-nav{flex:1;justify-content:space-between}.site-desktop-nav nav{margin-right:0}.header-phone{width:280px}.header-phone .phone-number{font-size:30px}}
@media(min-width:1251px){.site-desktop-nav nav a{font-size:14px}}
.sb-news-row h2,.sb-news-empty h2,.sb-article h1,.error404 h1{text-wrap:balance}
