/*
Theme Name: SST Corporate Original
Theme URI: https://modern-shop.site/
Author: SST
Description: 合同会社SST 4事業のためのオリジナル企業サイト
Version: 1.4.7
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: sst-corporate-original
*/
:root{--ink:#171b20;--muted:#626873;--line:#dedfe2;--paper:#fff;--cream:#f7f6f2;--accent:#e4ae5b;--blue:#4e70df;--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}body{margin:0;font-family:'Noto Sans JP','Hiragino Sans','Hiragino Kaku Gothic ProN',Meiryo,system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.85;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #5a78ef;outline-offset:4px}
.wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}.narrow{max-width:850px;margin-inline:auto}
.skip-link{position:absolute;left:16px;top:-100px;z-index:999;background:white;color:#111;padding:12px 20px}.skip-link:focus{top:15px}
/* Single brand only: no symbol / duplicate typography */
.site-header{height:80px;position:relative;z-index:120;background:#fff;box-shadow:0 1px 0 #e7e7e7}.header-inner{height:100%;display:flex;justify-content:space-between;align-items:center;gap:24px}
.brand{display:inline-flex;flex-direction:column;align-items:flex-start;gap:0;flex:none;width:max-content;min-width:0;white-space:nowrap;line-height:1.1}.brand-mark{font-family:Arial,Helvetica,sans-serif;font-size:36px;font-weight:950;letter-spacing:-.085em;line-height:1;display:block}.brand-mark span{color:#d6a15a}.brand>small{margin-top:5px;font-size:10px;font-weight:750;line-height:1.2;letter-spacing:.22em;color:#555861}
.site-nav,.sst-wp-menu{display:flex;align-items:center;gap:clamp(18px,2.5vw,39px)}.site-nav a{font-weight:700;font-size:12px;letter-spacing:.025em;transition:opacity .2s,color .2s;white-space:nowrap}.site-nav a:hover{color:#a46f37}.sst-wp-menu{margin:0;list-style:none;padding:0}.site-nav .nav-cta{border:1px solid #222;background:#191b1f;color:#fff;padding:11px 23px;border-radius:100px;font-size:12px}.site-nav .nav-cta:hover{background:#d0a15d;border-color:#d0a15d;color:#171b20}.site-nav .nav-policy{color:#74777a;font-size:11px}.nav-cta span{margin-left:11px;font-size:18px}.mobile-menu-button{display:none;border:none;background:transparent;width:42px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:0}.mobile-menu-button span{display:block;height:2px;width:25px;background:#161819;transition:transform .25s}
/* Hero typography and controls; moving photos are styled in the photo-river section below. */
.sst-showcase{position:relative;isolation:isolate;overflow:hidden;min-height:600px;height:clamp(610px,calc(100svh - 80px),810px);background:#0c1320;color:#fff}







.sst-showcase-shade{pointer-events:none;position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(6,12,23,.78) 0%,rgba(6,12,23,.53) 24%,rgba(5,10,20,.14) 60%,rgba(0,0,0,.12)),linear-gradient(0deg,rgba(5,10,20,.77),transparent 57%)}

.sst-showcase-headline{position:absolute;z-index:5;left:clamp(24px,6.2vw,98px);bottom:clamp(141px,18vh,178px);width:min(690px,calc(100% - 70px));pointer-events:none}
.sst-hero-eyebrow{display:block;color:#ffcb87;font:800 11px/1.35 Arial,sans-serif;letter-spacing:.23em;margin-bottom:25px;text-shadow:0 1px 6px #0005}.sst-hero-eyebrow b{color:#fff;font-size:10px;margin-left:11px;letter-spacing:.15em;font-weight:600}
.sst-headline-stage{min-height:245px}
.sst-showcase h1{margin:0 0 18px;font-size:clamp(44px,5.2vw,79px);font-weight:900;line-height:1.24;letter-spacing:-.075em;text-wrap:nowrap;text-shadow:0 3px 18px rgba(0,0,0,.22)}
.sst-showcase h1 span{display:block;white-space:nowrap}.sst-hero-lead span{display:block}
.sst-showcase h1.sst-enter{animation:sst-headline-in .65s var(--ease) both}
@keyframes sst-headline-in{from{opacity:.15;transform:translateY(20px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.sst-hero-lead{color:#f4f6f8;font-size:clamp(12px,1.28vw,15px);line-height:1.85;margin:0 0 26px;font-weight:600;text-shadow:0 1px 11px #0008}
.sst-hero-link{pointer-events:auto;display:inline-flex;align-items:center;gap:25px;border:1px solid rgba(255,255,255,.85);background:rgba(9,16,26,.38);padding:7px 7px 7px 23px;border-radius:40px;color:#fff;min-width:245px;justify-content:space-between;font-size:13px;font-weight:750;transition:background .3s,border-color .3s,transform .3s}.sst-hero-link:hover{transform:translateY(-3px);background:#fff;color:#14171a}.sst-hero-link b{border-radius:50%;width:41px;height:41px;display:grid;place-items:center;background:#f2be75;color:#191919;font-size:19px;font-weight:500}
.sst-showcase-bottom{position:absolute;z-index:10;bottom:0;left:0;right:0;min-height:85px;background:rgba(7,11,19,.66);border-top:1px solid #ffffff29;backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px clamp(23px,5vw,78px)}
.sst-slider-status{display:flex;align-items:center;white-space:nowrap;font:700 12px Arial,sans-serif;letter-spacing:.1em;color:#a9b2bc}.sst-slider-status>[data-sst-count]{color:#fff;font-size:23px;margin-right:4px}.sst-progress-track{width:75px;height:2px;background:#ffffff3b;margin-left:18px;position:relative;overflow:hidden}.sst-progress-track span{position:absolute;inset:0;background:#f1ba6e;transform:scaleX(0);transform-origin:left}
.sst-business-markers{display:flex;align-items:center;justify-content:center;gap:4px}.sst-business-markers button{border:0;color:#d6d6df;background:transparent;padding:12px 13px;font:750 11px Arial,sans-serif;letter-spacing:.1em;transition:color .3s,background .3s}.sst-business-markers button span{color:#e0b77b;margin-right:6px;font-size:9px}.sst-business-markers button:hover,.sst-business-markers button[aria-pressed=true]{background:#ffffff18;color:#fff;border-radius:4px}
.sst-slider-actions{display:flex;align-items:center;gap:8px}.sst-slider-actions button{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;border:1px solid #ffffff75;background:transparent;color:white;font-size:20px;transition:background .2s,color .2s}.sst-slider-actions button:hover{background:#fff;color:#181a1c}
/* Business quick route bar */
.sst-quick-nav{background:#f8f7f3;border-bottom:1px solid #e6e2db}.sst-quick-nav>.wrap{display:grid;grid-template-columns:1.14fr repeat(4,1fr);align-items:stretch;min-height:88px}.sst-quick-label{display:flex;align-items:center;gap:15px;font:850 11px Arial,sans-serif;letter-spacing:.16em}.sst-quick-label b{font-size:20px;color:#b18852}.sst-quick-nav a{display:flex;align-items:center;justify-content:space-between;gap:8px;border-left:1px solid #e5e1d9;padding:12px 20px;font-size:12px;font-weight:750;transition:background .25s,color .25s}.sst-quick-nav a b{font-size:16px;color:#b18852}.sst-quick-nav a:hover{background:#ede8df;color:#9d6a32}
/* Typography and sections */
.section{padding:110px 0}.section.alt{background:#f5f5f3}.eyebrow{display:block;font:850 11px/1.5 Arial,sans-serif;letter-spacing:.23em;color:#f0bf81;margin-bottom:20px}.eyebrow.dark{color:#b08148}.section-title{font-size:clamp(27px,3.5vw,48px);line-height:1.36;font-weight:850;letter-spacing:-.055em;margin:0 0 19px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:40px}.section-lead{max-width:680px;font-size:14px;line-height:2;color:#677078;margin:0}.section-head>.text-link{flex:none}.text-link{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:800;color:#9a652d;border-bottom:1px solid #c7aa86;padding-bottom:5px}.text-link:hover{color:#171b20}.button{display:inline-flex;justify-content:center;align-items:center;padding:14px 26px;border-radius:30px;border:0;font-size:13px;font-weight:800;transition:background .25s,transform .25s}.button:hover{transform:translateY(-3px)}.button.dark{background:#15191e;color:#fff}.button.dark:hover{background:#af7a37}
.sst-intro-section{background:#fff}.sst-intro-layout{display:grid;grid-template-columns:1.08fr .8fr;gap:12%;align-items:center}.sst-statement{font-size:clamp(35px,4.65vw,66px);line-height:1.44;font-weight:900;letter-spacing:-.085em;margin:0 0 24px}.sst-statement span{display:block}.sst-statement em{font-style:normal;color:#ad7c45}.sst-statement-sub{font-weight:900;font-size:14px;letter-spacing:.035em;color:#454a52;margin:0}.sst-intro-detail{border-left:2px solid #d6b387;padding-left:33px}.sst-intro-detail p{font-size:15px;color:#59636d;line-height:2.15;margin:0 0 22px}.sst-gold-rule{display:none}.sst-round-link{display:inline-flex;align-items:center;gap:14px;font-size:13px;font-weight:800;margin-top:12px}.sst-round-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#1a1d24;color:#fff;font-size:19px;transition:transform .3s}.sst-round-link:hover .sst-round-icon{transform:rotate(45deg);background:#ad7c45}
.sst-service-index{border-top:1px solid #d2d2d0}.sst-service-row{display:grid;grid-template-columns:65px minmax(0,1fr) 210px 133px;align-items:center;gap:30px;min-height:186px;border-bottom:1px solid #d2d2d0;padding:20px 12px 20px 0;transition:background .3s,padding .3s}.sst-service-row:hover{background:#ecebe7;padding-left:19px}.sst-service-num{font:700 21px Georgia,serif;color:#ad7e47;align-self:flex-start;margin-top:20px}.sst-service-name{display:flex;flex-direction:column;gap:6px}.sst-service-name small{font:750 10px Arial,sans-serif;letter-spacing:.2em;color:#987748}.sst-service-name strong{font-size:clamp(20px,2.45vw,30px);letter-spacing:-.04em;line-height:1.4}.sst-service-name>span{font-size:13px;color:#6f767b;line-height:1.9}.sst-service-icon{height:129px;overflow:hidden;border-radius:2px;transform:rotate(-3deg);box-shadow:5px 8px 20px #0001;transition:transform .5s var(--ease)}.sst-service-icon img{height:100%;width:100%;object-fit:cover}.sst-service-row:hover .sst-service-icon{transform:rotate(0deg) scale(1.05)}.sst-service-more{display:flex;align-items:center;justify-content:flex-end;gap:12px;font-size:12px;font-weight:800;white-space:nowrap}.sst-service-more i{font-style:normal;display:grid;place-items:center;height:40px;width:40px;border:1px solid #aaa9a6;border-radius:50%;font-size:19px;transition:all .25s}.sst-service-row:hover .sst-service-more i{background:#1c1e24;color:#fff}
.sst-promise{background:#151b25 url('assets/img/hero-consulting.webp') center/cover no-repeat;color:#fff;position:relative;padding:115px 0}.sst-promise:before{content:'';position:absolute;inset:0;background:linear-gradient(100deg,#0d121df3,#111827eb 68%,#111827a1)}.sst-promise>.wrap{position:relative}.sst-promise-layout{display:grid;grid-template-columns:1fr .85fr;gap:11%;align-items:center}.sst-promise h2{font-size:clamp(31px,3.7vw,54px);line-height:1.5;letter-spacing:-.05em;margin:0 0 15px}.sst-promise p{font-size:14px;color:#d8dce4;line-height:2.15}.sst-outline-white{display:inline-flex;align-items:center;gap:23px;border-bottom:1px solid #fff9;font-size:13px;font-weight:750;margin-top:20px;padding-bottom:10px}.sst-outline-white:hover{color:#f4be7c}.sst-promise-items{border-top:1px solid #ffffff30}.sst-promise-items>div{display:flex;align-items:center;gap:25px;padding:26px 0;border-bottom:1px solid #ffffff30}.sst-promise-items b{font:700 24px Georgia,serif;color:#f2ba79}.sst-promise-items strong{font-size:19px;letter-spacing:.1em;min-width:150px}.sst-promise-items span{color:#b7c4d1;font-size:12px}
.sst-modern-layout{display:grid;grid-template-columns:1.08fr .9fr;gap:9%;align-items:center}.sst-modern-media{position:relative;height:480px;overflow:hidden;background:#e1e1de}.sst-modern-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s}.sst-modern-media:hover img{transform:scale(1.045)}.sst-modern-media>span{position:absolute;bottom:0;left:0;background:#171b20;color:#fff;font:750 10px Arial,sans-serif;letter-spacing:.14em;padding:12px 16px}.sst-modern-copy h2{font-size:clamp(30px,3.55vw,50px);line-height:1.48;letter-spacing:-.05em;margin:0 0 22px}.sst-modern-copy>p{font-size:15px;color:#59636b;line-height:2.1;margin:0 0 24px}.sst-modern-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.image-note{display:block;color:#85898f;font-size:11px;line-height:1.85;margin-top:22px}
.news-list{list-style:none;padding:0;margin:0;border-top:1px solid #dedfe1}.news-list li{border-bottom:1px solid #dedfe1}.news-list a{display:grid;grid-template-columns:130px 1fr 35px;gap:25px;align-items:center;padding:25px 5px;transition:padding .25s,background .25s}.news-list a:hover{background:#fff;padding-left:16px}.news-list time{color:#ad7c45;font-size:12px;font-weight:750}.news-title{font-size:15px;font-weight:700}.news-arrow{font-size:21px}
.cta-section{background:#dcb785;color:#191d20;padding:95px 0}.cta-section .wrap{display:flex;align-items:center;gap:45px;flex-wrap:wrap}.cta-section .eyebrow{flex-basis:100%;color:#685033;margin:0}.cta-section h2{font-size:clamp(27px,3.5vw,47px);margin:0;letter-spacing:-.05em;line-height:1.38}.cta-section p{font-size:14px;margin:0;flex:1;min-width:220px}.cta-section .button{background:#171b1f;color:#fff}
.site-footer{background:#16191f;color:#fff;padding:70px 0 0}.footer-main{display:grid;grid-template-columns:1.2fr .65fr 1fr;gap:10%;padding-bottom:70px}.brand-footer .brand-mark{font-size:46px}.brand-footer>small{color:#c8ced6}.footer-about{color:#abb1bb;line-height:2.1;font-size:13px;margin:28px 0 0}.footer-title{font:800 11px Arial,sans-serif;letter-spacing:.2em;color:#d2ac7b;margin:8px 0 25px}.footer-links{padding:0;margin:0;list-style:none}.footer-links li{margin-bottom:12px}.footer-links a,.footer-company{font-size:13px;color:#c7cad1;line-height:2}.footer-links a:hover,.footer-company a:hover,.footer-bottom-links a:hover{color:#f1ba74}.footer-company{overflow-wrap:anywhere}.footer-company strong{color:#fff}.footer-bottom{border-top:1px solid #ffffff2a;padding:23px 0;display:flex;justify-content:space-between;gap:22px;color:#9ca2ad;font-size:11px}.footer-bottom-links{display:flex;gap:25px}.footer-bottom-links a{color:#cfd2d7}
/* Inner pages — clear information and functional detail pages */
.page-hero{background:#151e2c;color:#fff;position:relative;padding:95px 0 90px;overflow:hidden}.page-hero:after{content:'';position:absolute;right:-100px;top:-220px;width:550px;height:550px;border:1px solid #ffffff2c;border-radius:50%;box-shadow:0 0 0 100px #ffffff08,0 0 0 200px #ffffff06}.page-hero .wrap{position:relative;z-index:1}.breadcrumbs{font-size:12px;display:flex;gap:9px;margin-bottom:45px;color:#bdc8d5}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.page-hero h1{font-size:clamp(38px,5.5vw,70px);letter-spacing:-.07em;line-height:1.35;margin:0 0 16px}.page-hero p{max-width:760px;font-size:15px;color:#d0d8df;line-height:2;margin:0}
.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:9%}.copy-block p{color:#616a73;font-size:15px;line-height:2.2;margin:0 0 22px}.copy-block h2{font-size:30px;margin:0 0 25px}.company-title{font-size:30px;margin:0 0 32px}.company-table{width:100%;border-collapse:collapse;border-top:2px solid #232629;font-size:14px}.company-table tr{border-bottom:1px solid #ddd}.company-table th,.company-table td{text-align:left;vertical-align:top;padding:24px 20px;line-height:2}.company-table th{width:28%;font-weight:750;background:#edeee9}.company-table td{overflow-wrap:anywhere}.prose h2{font-size:23px;margin:36px 0 15px}.prose p,.prose li{font-size:14px;line-height:2.15;color:#53616f}.prose a{color:#92632f;text-decoration:underline;text-underline-offset:3px}.prose{overflow-wrap:anywhere}.prose ul{padding-left:1.5em}
.sst-detail-top .copy-block p{font-size:15px}.sst-detail-line{display:block;width:60px;height:3px;background:#dbad74;margin-top:30px}.sst-offer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:19px}.sst-offer-card{background:#fff;padding:35px 36px;min-height:211px;border-top:2px solid #d5bd9b;box-shadow:0 9px 33px #1823340b;transition:transform .3s,box-shadow .3s}.sst-offer-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px #1823341b}.sst-offer-card>span{font:750 15px Arial,sans-serif;color:#ae8451}.sst-offer-card h3{font-size:21px;letter-spacing:-.025em;margin:13px 0}.sst-offer-card p{font-size:14px;color:#6b737c;line-height:1.95;margin:0}.sst-detail-split{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.sst-checklist{margin:26px 0 34px;padding:0;list-style:none}.sst-checklist li{padding:15px 0 15px 27px;border-bottom:1px solid #dedfe2;position:relative;font-size:14px}.sst-checklist li::before{content:'↗';position:absolute;left:0;color:#ad824b}.sst-detail-visual{height:380px;overflow:hidden;position:relative;background:#dae0e5}.sst-detail-visual img,.sst-detail-visual svg{display:block;width:100%;height:100%;object-fit:cover}.sst-detail-visual>span{position:absolute;bottom:0;left:0;background:#1c252e;color:#fff;padding:10px 16px;font:800 10px Arial,sans-serif;letter-spacing:.1em}.sst-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.sst-process-step{border-top:2px solid #d9b587;padding:25px 0}.sst-process-step>span{font:850 12px Arial,sans-serif;letter-spacing:.12em;color:#a8793e}.sst-process-step h3{font-size:19px;margin:15px 0}.sst-process-step p{font-size:13px;color:#6c737c;line-height:2}.sst-faq-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:8%}.sst-faq-items{border-top:1px solid #ddd}.sst-faq{border-bottom:1px solid #ddd}.sst-faq summary{cursor:pointer;display:flex;align-items:center;gap:15px;padding:23px 6px;font-weight:750;font-size:15px;list-style:none}.sst-faq summary::-webkit-details-marker{display:none}.sst-faq-q{color:#b38e5d;font-family:Arial,sans-serif}.sst-faq-sign{margin-left:auto;font-size:25px;color:#a8793e;line-height:1}.sst-faq[open] .sst-faq-sign{transform:rotate(45deg)}.sst-faq-content,.sst-faq p{color:#68747e;font-size:14px;line-height:2;padding:0 15px 20px 30px}.sst-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.sst-related-card{display:flex;flex-direction:column;gap:10px;background:#fff;padding:30px 26px;min-height:190px;transition:transform .3s,box-shadow .3s}.sst-related-card:hover{transform:translateY(-4px);box-shadow:0 15px 40px #11111113}.sst-related-card small{color:#ac8050;font:800 11px Arial,sans-serif;letter-spacing:.1em}.sst-related-card strong{font-size:20px}.sst-related-card>span:last-child{margin-top:auto;color:#a87c4a;font-size:13px}
.contact-layout{display:grid;grid-template-columns:1.7fr .8fr;gap:9%;align-items:start}.contact-form label{font-size:13px;font-weight:750;display:block;margin:0 0 20px}.contact-form label>span{display:block;margin-bottom:8px}.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-form select{display:block;width:100%;border:1px solid #bfc3c7;border-radius:3px;padding:13px 15px;font-size:15px;color:#202329;background:white}.contact-form textarea{resize:vertical;min-height:175px}.contact-form .required{color:#ad7746;font-size:11px;margin-left:6px}.contact-form .consent{font-weight:400;display:flex;align-items:flex-start;gap:10px}.contact-form .consent span{display:block}.contact-form .consent input{width:auto;margin-top:7px}.contact-form .consent a{color:#986b39;text-decoration:underline}.contact-side{background:#f3f3f1;padding:30px}.contact-side h2{font-size:20px;margin:0 0 15px}.contact-side p{color:#69717a;font-size:13px;line-height:2.05;overflow-wrap:anywhere}.hp-field{position:absolute!important;left:-100vw!important;width:1px!important;height:1px!important;overflow:hidden!important}.notice{padding:14px 20px;background:#e1f2e3;color:#285b36;margin:22px 0}.notice.error{background:#fff0ed;color:#8a3024}
/* Generic templates */
.business-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.business-card{display:block;border:1px solid #ddd;background:#fff}.business-cover{height:220px;position:relative;overflow:hidden;background:#e3e8ec}.business-cover img{width:100%;height:100%;object-fit:cover}.business-content{padding:30px}.business-content h3{font-size:24px}.business-content p{color:#66717b;font-size:14px}.tagline-strip{background:#181c24;color:#fff;padding:50px 0}.tagline-strip .wrap{display:flex;align-items:center;justify-content:space-between}.tagline-strip strong{font-size:23px}.tagline-strip small{display:block;color:#c7ccd2;font-size:13px}.brand-feature{display:grid;grid-template-columns:1fr 1fr}.brand-feature-photo img{width:100%;height:100%;object-fit:cover}.brand-feature-copy{padding:60px}.brand-feature-copy h3{font-size:30px}.brand-feature-copy p{color:#67717b}.svg-cover svg{width:100%;height:100%}
.reveal-ready{opacity:1;transform:translateY(14px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal-ready.is-visible{opacity:1;transform:none}
@media(max-width:1100px){.wrap{width:calc(100% - 62px)}.sst-business-markers{gap:0}.sst-business-markers button{padding:10px 7px}.sst-quick-nav a{padding-inline:12px}.sst-service-row{grid-template-columns:48px minmax(0,1fr) 140px 110px;gap:16px}.sst-service-icon{height:107px}.sst-service-more{font-size:11px}}
@media(max-width:840px){.site-header{height:67px}.brand-mark{font-size:31px}.brand>small{font-size:9px}.mobile-menu-button{display:flex}.mobile-menu-button[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.mobile-menu-button[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.site-nav{display:none;position:absolute;top:67px;left:0;right:0;background:#fff;box-shadow:0 13px 22px #0002;padding:22px max(31px,calc((100vw - 760px)/2));align-items:stretch;flex-direction:column;gap:0;max-height:calc(100svh - 67px);overflow:auto}.site-nav.is-open{display:flex}.site-nav>a,.site-nav .sst-wp-menu a{display:block;padding:14px 0;font-size:14px;border-bottom:1px solid #e7e7e7}.site-nav .nav-cta{margin-top:20px;text-align:center}.sst-wp-menu{display:flex;flex-direction:column;align-items:stretch;gap:0}.sst-showcase{height:650px;min-height:570px}.sst-showcase-headline{bottom:136px}.sst-showcase h1{font-size:clamp(40px,6.4vw,58px)}.sst-business-markers{display:none}.sst-quick-nav>.wrap{grid-template-columns:repeat(4,1fr)}.sst-quick-label{grid-column:1/-1;padding:14px 0}.sst-quick-nav a{min-height:56px}.sst-intro-layout,.sst-promise-layout,.sst-modern-layout,.two-columns,.sst-detail-split,.sst-faq-layout{grid-template-columns:1fr;gap:43px}.sst-modern-media{height:390px}.footer-main{gap:35px;grid-template-columns:1fr 1fr}.footer-main>div:first-child{grid-column:1/-1}.contact-layout{grid-template-columns:1fr}.sst-process-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.sst-showcase{height:660px;min-height:600px}.sst-showcase-shade{background:linear-gradient(90deg,#07101caf,#07101c49 70%),linear-gradient(0deg,#07101ce0,transparent 68%)}.sst-showcase-headline{left:20px;right:20px;width:calc(100% - 40px);bottom:128px}.sst-hero-eyebrow{font-size:9px;margin-bottom:16px}.sst-hero-eyebrow b{font-size:8px}.sst-headline-stage{min-height:184px}.sst-showcase h1{font-size:clamp(28px,8.15vw,43px);line-height:1.29;letter-spacing:-.07em;margin-bottom:14px}.sst-hero-lead{font-size:11px;line-height:1.8;margin:0 0 20px}.sst-hero-link{font-size:12px;min-width:220px;padding:6px 6px 6px 16px}.sst-hero-link b{width:36px;height:36px}.sst-showcase-bottom{min-height:78px;padding:13px 20px}.sst-slider-status>[data-sst-count]{font-size:19px}.sst-progress-track{width:45px;margin-left:10px}.sst-slider-actions{gap:7px}.sst-slider-actions button{width:35px;height:35px}.sst-quick-nav>.wrap{grid-template-columns:1fr 1fr}.sst-quick-label{font-size:10px}.sst-quick-nav a{font-size:11px;padding:12px 10px;border-top:1px solid #e2dfd8}.sst-quick-nav a:nth-of-type(odd){border-left:0}.section{padding:75px 0}.section-head{align-items:start;flex-direction:column;gap:22px}.sst-statement{font-size:clamp(29px,7vw,42px)}.sst-intro-detail{padding-left:20px}.sst-intro-detail p{font-size:14px}.sst-service-row{grid-template-columns:37px minmax(0,1fr) 72px;min-height:145px;gap:13px;padding:14px 5px 14px 0}.sst-service-num{font-size:15px;margin-top:7px}.sst-service-name strong{font-size:18px}.sst-service-name>span{display:none}.sst-service-icon{height:86px;width:72px;grid-column:3}.sst-service-more{grid-column:2 / 3;justify-content:flex-start;font-size:11px}.sst-service-more i{width:26px;height:26px;font-size:15px}.sst-promise{padding:80px 0}.sst-promise h2{font-size:29px}.sst-promise-items>div{padding:20px 0}.sst-promise-items strong{min-width:105px;font-size:15px}.sst-modern-media{height:280px}.sst-modern-copy h2{font-size:30px}.sst-offer-grid,.sst-related-grid,.business-grid{grid-template-columns:1fr}.sst-process-grid{grid-template-columns:1fr 1fr;gap:13px}.sst-offer-card{padding:28px 23px;min-height:0}.page-hero{padding:75px 0}.page-hero h1{font-size:37px}.company-table th,.company-table td{padding:17px 10px}.company-table th{width:30%}.footer-main{grid-template-columns:1fr;gap:28px;padding-bottom:40px}.footer-main>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column}.cta-section{padding:70px 0}.cta-section .wrap{gap:20px}.cta-section p{flex-basis:100%}.news-list a{grid-template-columns:1fr 23px;gap:6px}.news-list time{grid-column:1 / -1}.news-arrow{grid-row:2;grid-column:2}}
@media(max-width:360px){.sst-showcase h1{font-size:27px}.sst-hero-eyebrow{letter-spacing:.11em}.sst-hero-lead{font-size:10px}.sst-showcase-headline{bottom:123px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-ready,.sst-showcase h1.sst-enter{transition:none!important;animation:none!important;transform:none!important}.sst-progress-track span{transition:none!important}}


/* Continuous photo river: horizontally moving panels, with crossfading paired images. */
.sst-river{position:absolute;inset:0;z-index:-3;overflow:hidden;background:#0b1426;pointer-events:none}
.sst-river-track{height:100%;width:max-content;display:flex;gap:0;will-change:transform;animation:sst-river-flow 48s linear infinite}
.sst-river-panel{height:100%;width:25vw;flex:0 0 25vw;position:relative;isolation:isolate;overflow:hidden;border-right:3px solid #ffffff28;background:#101b2b}
.sst-river-photo{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.02) contrast(1.05) brightness(.89);transform:scale(1.06)}
.sst-river-photo--alternate{opacity:0;animation:sst-river-image-swap 12s ease-in-out infinite;animation-delay:calc(var(--phase) * -1.45s)}
.sst-river-panel::after{content:"";inset:0;position:absolute;z-index:2;background:linear-gradient(180deg,#080e1d25 0%,transparent 30%,#090f1d44 100%)}
.sst-river-caption{position:absolute;z-index:3;top:25px;left:22px;right:15px;display:flex;justify-content:space-between;align-items:center;gap:8px;font:700 10px/1.3 Arial,sans-serif;color:#fff;letter-spacing:.15em;opacity:.83;text-shadow:0 1px 8px #0009}
.sst-river-caption b{font-size:10px;color:#ffd0a1}
@keyframes sst-river-flow {from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes sst-river-image-swap {0%,18%{opacity:0}31%,62%{opacity:1}81%,100%{opacity:0}}
.sst-showcase-shade{background:linear-gradient(90deg,#06101fdc 0%,#07111ec7 22%,#07111e78 45%,#08121d16 80%),linear-gradient(0deg,#050b19d6,transparent 60%)}


@media(max-width:980px){.sst-river-panel{width:40vw;flex-basis:40vw}}
@media(max-width:600px){.sst-river-panel{width:64vw;flex-basis:64vw}.sst-river-caption{top:40px;left:12px;font-size:9px}.sst-river-track{animation-duration:56s}.sst-showcase-shade{background:linear-gradient(90deg,#06101fd5,#08112070 70%),linear-gradient(0deg,#06101fee,transparent 75%)}}
@media(prefers-reduced-motion:reduce){.sst-river-track,.sst-river-photo--alternate{animation-play-state:paused}}

/* Intentional two-line statement without automatic wrapping within each line. */
.sst-promise h2{font-size:clamp(18px,2.15vw,38px);letter-spacing:-.075em;line-height:1.6;max-width:none}
.sst-promise h2>span{display:block;white-space:nowrap;max-width:100%;font-size:inherit}
@media(max-width:840px){.sst-promise h2{font-size:clamp(18px,5vw,33px)}}
@media(max-width:600px){.sst-promise h2{font-size:clamp(17px,4.6vw,25px);letter-spacing:-.08em}}

/* Real Modern brand image is allowed to be wider; keep logos and product visible. */
.sst-modern-media img{object-position:50% 50%}


/* PC / tablet hero only. Mobile <=600px is unchanged.
   Keep the same proportion of images visible as the mobile photo river
   instead of four narrow, seemingly static columns. Both photo layers
   continue moving and crossfading without waiting for a click. */
@media (min-width:601px){
  .sst-river-panel{width:52vw;flex-basis:52vw}
}
/* Windows / desktop reduced-motion preference must not unexpectedly turn off
   the always-on hero requested for this site. Other reduced-motion safeguards
   remain in place for scroll / text effects. */
@media (prefers-reduced-motion:reduce){
  .sst-river-track,.sst-river-photo--alternate{animation-play-state:running}
}
