/* DIAGONAL BLUE — Gadget Consulting, adopted visual direction */
:root{--brand:#008ed0;--ink:#031d45;--mist:#f0f8fc;--line:#d4e4ed;--accent:#37d7f3}
body{color:var(--ink)}
.button{border-radius:3px;background:var(--ink);min-height:64px;padding:19px 30px;letter-spacing:.05em;box-shadow:none;position:relative}
.button:hover{background:#006ab5;box-shadow:none;transform:translateY(-2px)}
.button .icon{transition:transform .2s}.button:hover .icon{transform:translateX(5px)}
.button-outline{background:transparent;color:var(--ink);border-color:var(--ink)}.button-outline:hover{background:var(--ink);color:white}
.button-white{background:white;color:var(--ink)}.button-white:hover{background:#e5f8ff;color:#005da5}
.header-contact{background:#0095c6;border-radius:3px;min-width:224px;min-height:60px}
.menu-toggle{border-radius:3px}.round-link{border-radius:3px;border-color:var(--brand)}.round-link:hover{background:var(--brand);color:#fff}
.button:disabled{opacity:.6;cursor:wait;transform:none}.text-link{border-bottom-width:2px}
.editorial-photo,.service-row-visual,.offering,.issue-box,.empty-state,.about-photo,.confirm-panel,.service-preview-label{border-radius:3px}
input:not([type=checkbox]),textarea,select{border-radius:3px}
.photo-index{border-radius:2px;font-weight:700}.tags span{border-radius:2px}.service-card{border-radius:3px}
.site-header{height:108px}.header-inner{max-width:1600px;padding:18px 4.2%;gap:30px}.logo{width:220px}.desktop-nav{gap:24px}.desktop-nav a{font-size:15px}
.home .site-header{position:sticky;top:0;z-index:100;background:#fff}.home .header-inner{align-items:center}.home .desktop-nav{margin-left:auto}.home .header-contact{margin-left:5px}
.calm-hero{position:relative;max-width:1520px;margin:0 auto;min-height:620px;display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr) minmax(260px,320px);grid-template-areas:"left copy right";align-items:center;gap:8px 16px;padding:8px 3% 8px}
.calm-photo{margin:0;position:relative;z-index:1}.calm-photo.is-left{grid-area:left;justify-self:start;padding-left:2%}.calm-photo.is-right{grid-area:right;justify-self:end;padding-right:1%}
.calm-copy{grid-area:copy;text-align:center;z-index:2;padding:28px 8px 36px}
.calm-tagline{color:#0094d3;font-weight:700;font-size:15px;letter-spacing:.02em;margin:0 0 8px;line-height:1.7}.calm-tagline:after{content:'';display:block;width:44px;height:2px;background:#0094d3;margin:12px auto 0}
.calm-copy h1{font-size:clamp(28px,2.7vw,40px);font-weight:800;line-height:1.5;letter-spacing:-.02em;margin:18px 0 20px;color:var(--ink)}.calm-copy h1 .blue-word{color:#0094d3}.calm-copy h1 .hero-line{white-space:nowrap}
.calm-lead{color:#4a6070;font-size:16px;line-height:2;margin:0 0 30px}
.calm-copy .diagonal-actions{justify-content:center}
.calm-photo img{display:block;width:min(268px,22vw);height:min(330px,28vw);object-fit:cover;border-radius:50%;background:#f0faff}
.calm-photo.is-left img{object-position:8% 42%}.calm-photo.is-right img{width:min(310px,25vw);height:min(372px,32vw);object-position:62% 28%}
.calm-photo figcaption{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:14px;line-height:1.7;letter-spacing:.04em;margin:0 0 12px;color:#20344a}
.calm-photo.is-left figcaption{padding-left:8px}.calm-photo.is-right figcaption{text-align:right;padding-right:8px}
.calm-script{font-family:'Segoe Script','Brush Script MT','Yu Mincho',cursive;color:#7ec8e3;font-size:18px;margin:14px 8px 0 0;text-align:right;letter-spacing:.02em}
.calm-float{position:absolute;right:-6px;top:38%;margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,78px);gap:8px;color:var(--brand)}
.calm-float li{border:1px solid #aae6fa;border-radius:8px;background:#fffffff2;min-height:74px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 4px;gap:2px}
.calm-float .icon{width:26px;height:26px}.calm-float span{font-size:10px;line-height:1.35;text-align:center;font-weight:700}.calm-float li:last-child{grid-column:1/-1;justify-self:center;width:78px}
.calm-dot{position:absolute;width:9px;height:9px;border-radius:50%;background:#c7ebf7;z-index:0;pointer-events:none}
.calm-dot.d1{left:28%;top:18%}.calm-dot.d2{left:31%;top:22%;width:6px;height:6px}.calm-dot.d3{right:31%;top:20%}.calm-dot.d4{right:27%;bottom:22%;width:7px;height:7px}
.home .service-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:1320px;margin:8px auto 28px;padding:0 3.2%}
.home .service-card{border-radius:14px}
.diagonal-hero{height:720px;max-width:1800px;margin:auto;position:relative;isolation:isolate;overflow:hidden;background:white}
.diagonal-visual{position:absolute;inset:0;background:url('../img/office.png') 96% 34%/auto 142% no-repeat;clip-path:polygon(47% 0,86% 0,100% 14%,100% 58%,66% 100%,19% 100%);z-index:0}
.diagonal-visual-top{position:absolute;right:0;top:0;width:40%;height:46%;background:url('../img/office.png') 62% 8%/auto 190% no-repeat;clip-path:polygon(36% 0,100% 0,100% 100%,8% 54%);z-index:1}
.diagonal-inset{position:absolute;right:0;bottom:0;width:40%;height:48%;background:url('../img/office.png') 2% 64%/auto 200% no-repeat;clip-path:polygon(100% 16%,100% 100%,0 100%,30% 32%);z-index:2}
.diagonal-blue-a{position:absolute;right:4%;top:0;width:24%;height:30%;background:linear-gradient(140deg,#5ae6ffd9 0%,#00a0dcc4 70%);clip-path:polygon(48% 0,100% 0,100% 70%,0 100%);z-index:3;pointer-events:none}
.diagonal-blue-plane{position:absolute;right:-1px;top:28%;width:30%;height:50%;background:linear-gradient(128deg,#1ac4ef 0%,#0078c8 48%,#004ea6 100%);clip-path:polygon(46% 0,100% 0,100% 100%,0 86%);z-index:4;color:white;display:flex;flex-direction:column;justify-content:center;padding:0 6% 6% 20%;pointer-events:none}
.diagonal-blue-plane>span{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-style:italic;display:block;font-size:16px;line-height:1.75;letter-spacing:.1em}.diagonal-blue-plane small{display:block;margin:16px 0 0;padding-top:10px;border-top:1px solid #ffffffaa;font-size:10px;line-height:1.35;letter-spacing:.14em;width:118px;text-align:left;font-style:normal}
.diagonal-blue-c{position:absolute;right:0;bottom:6%;width:22%;height:34%;background:linear-gradient(160deg,#12c8f0,#0058b8);clip-path:polygon(100% 0,100% 100%,0 100%,40% 30%);z-index:3;pointer-events:none}
.diagonal-stroke{display:none}
.diagonal-copy{padding:118px 0 0 4.2%;width:52%;position:relative;z-index:5}
.diagonal-copy>.eyebrow{font-size:13px;letter-spacing:.22em;display:flex;align-items:center;gap:22px;margin-bottom:22px;white-space:nowrap;color:#00a4d8}.diagonal-copy>.eyebrow:after{content:'';display:block;width:88px;height:1px;background:#00a4d8}
.diagonal-copy h1{font-size:clamp(60px,6.6vw,104px);font-weight:900;line-height:1.16;letter-spacing:-.05em;margin:0 0 26px}.diagonal-copy h1 span{display:block}.blue-word{color:#00a8e8}.title-stroke{position:relative;z-index:1}.title-stroke:before{content:'';position:absolute;left:-4%;width:240%;bottom:32%;height:15px;background:#3ad6f4;transform:rotate(-12deg);transform-origin:left center;z-index:-1}
.diagonal-description{font-size:17px;line-height:1.9;margin-bottom:26px;font-weight:500;letter-spacing:0;color:#24364a;max-width:520px;position:relative;z-index:2}
.diagonal-actions{display:flex;gap:28px;align-items:center;position:relative;z-index:2}.diagonal-actions .button{min-width:296px;font-size:19px;min-height:75px}.diagonal-actions .text-link{font-size:15px;white-space:nowrap}
.diagonal-note{position:absolute;top:132px;left:43%;font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:18px;letter-spacing:.08em;line-height:1.55;transform:rotate(-11deg);z-index:5;pointer-events:none;color:var(--ink)}.diagonal-note:after{content:'';height:1px;background:var(--brand);width:108px;display:block;margin-top:10px}
.diagonal-ideas{position:absolute;right:20px;bottom:22px;z-index:5;color:#fff;font-size:9px;letter-spacing:.16em;line-height:1.4;pointer-events:none;text-align:left}
.solution-strip{max-width:1600px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:22px 3.3% 30px;margin:auto;border-top:2px solid #00a8e0;background:#fff;position:relative}
.solution-strip>a{position:relative;padding:0 30px 8px;min-width:0;border-left:1px solid #b4d9eb;transition:background .2s;min-height:118px}.solution-strip>a:first-child{border:0;padding-left:0}.solution-strip>a:hover{background:#f2fbff}
.solution-number{display:block;color:var(--brand);font-size:13px;font-weight:700;line-height:1.6;margin-bottom:2px}
.solution-english{display:block;font-family:Impact,'Arial Narrow',sans-serif;font-size:40px;font-weight:800;letter-spacing:-.03em;line-height:1.15;white-space:nowrap;color:var(--ink)}.solution-english.accent{color:#00a8e0}.solution-strip h2{font-size:20px;margin:6px 0 0}.solution-strip p{font-size:14px;padding-right:36px;margin:4px 0 0;line-height:1.7;color:#355066}.solution-strip>a>.icon{position:absolute;right:6px;bottom:6px;color:var(--brand);width:28px;transition:transform .2s}.solution-strip>a:hover>.icon{transform:translateX(4px)}
.section{padding-block:115px}.section-title{font-size:46px;font-weight:800;line-height:1.5;letter-spacing:-.025em}.eyebrow{font-size:15px;letter-spacing:.2em;font-weight:800}.body-copy{line-height:2.1}
.home-approach{position:relative;gap:70px;align-items:center}.home-approach:before{content:'';position:absolute;top:105px;right:0;width:130px;height:5px;background:var(--accent);transform:rotate(-15deg)}.home-approach .section-title{font-size:58px}.approach-photo{border-radius:0;clip-path:polygon(0 9%,100% 0,100% 91%,0 100%);max-height:none;aspect-ratio:4/3;margin-top:35px}
.home-approach .lead{font-size:22px}.section-mist{background:#f0f8fc;position:relative}.services-section{overflow:hidden}.services-section:before{content:'SOLUTIONS';font-family:Impact,'Arial Narrow',sans-serif;font-weight:900;font-size:clamp(90px,14vw,190px);line-height:1;color:#e0eff7;position:absolute;right:0;top:24px;letter-spacing:.01em;pointer-events:none}.services-section>.container{position:relative}
.section-heading{align-items:end;margin-bottom:55px}.service-list{border:0}.service-row{grid-template-columns:46% 1fr 56px;gap:38px;padding-block:50px;border-bottom:1px solid #bed5e2;align-items:center}.service-row-visual{min-height:310px;border-radius:0;clip-path:polygon(0 7%,100% 0,100% 93%,0 100%)}.service-row-visual .editorial-photo{border-radius:0;min-height:310px;object-position:50% 25%;aspect-ratio:4/3}.service-row h3{font-size:32px;margin-bottom:18px}.service-row .eyebrow{color:var(--brand);font-size:14px}.service-row .photo-index{left:18px;bottom:40px;color:white;background:var(--brand);padding:4px 11px}
.service-row:nth-child(even){grid-template-columns:56px 1fr 46%}.service-row:nth-child(even)>.service-row-visual{grid-column:3;grid-row:1;clip-path:polygon(0 0,100% 7%,100% 100%,0 93%)}.service-row:nth-child(even)>div{grid-column:2;grid-row:1}.service-row:nth-child(even)>.round-link{grid-column:1;grid-row:1}.service-row .round-link{width:56px;height:56px;background:white}.service-row .round-link:hover{background:var(--brand)}
.work-section .section-heading{position:relative}.work-section .section-heading:after{content:'';position:absolute;right:0;bottom:-12px;width:210px;height:3px;background:var(--accent);transform:rotate(-12deg)}.process-grid{gap:35px;margin-top:55px}.process-grid li{position:relative;border-top:0;padding-top:0}.process-photo{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:50% 28%;margin:0 0 16px;border-radius:0}.process-grid li>span{font-size:17px;font-weight:800}.process-grid h3{font-size:23px}.process-grid li:not(:last-child):after{content:'north_east';font-family:'Material Icons Outlined';position:absolute;right:-23px;top:22%;color:#78b6d5;font-size:26px;line-height:1;speak:never}
.faq-grid{gap:70px}.faq-item summary{padding-block:27px}.faq-plus{font-size:28px}.news-home .eyebrow{font-size:30px;letter-spacing:.1em}.news-empty{padding-block:32px}
.contact-band{background:var(--ink);padding-block:95px;isolation:isolate}.contact-band:after{border:0;border-radius:0;background:linear-gradient(130deg,#00b6e4,#0067b6);width:53%;height:140%;top:-20%;right:-15%;transform:skewX(-28deg);z-index:-1}.contact-band:before{content:'';width:72%;height:3px;background:var(--accent);position:absolute;bottom:40px;left:-8%;transform:rotate(-9deg);z-index:-1;opacity:.7}.contact-band .eyebrow{font-size:20px;letter-spacing:.2em}.contact-band h2{font-size:39px;font-weight:800;line-height:1.5}.contact-band p{line-height:1.9}.contact-band .button{min-width:290px}
.site-footer{padding-top:70px}.footer-top{padding-bottom:12px}.footer-links{gap:15px 55px}.footer-bottom{padding-block:24px 10px}
.interior .site-header{border-bottom:1px solid var(--line)}.breadcrumb{padding-top:28px}.page-intro{position:relative;padding-block:65px 60px;border-bottom:2px solid var(--brand);isolation:isolate;overflow:hidden}.page-intro:after{content:'';position:absolute;right:-40px;top:-25px;width:160px;height:180px;transform:skewX(-30deg);background:linear-gradient(150deg,#e4faff,#c9eefa);z-index:-1}.page-intro>.eyebrow{font-family:Impact,'Arial Narrow',sans-serif;font-size:32px;color:var(--brand);letter-spacing:.02em;line-height:1.1}.page-intro h1{font-size:48px;font-weight:800;letter-spacing:-.025em}.page-intro>p:last-child{font-size:18px;max-width:850px;padding-right:25px}
.service-detail-preview{gap:60px;grid-template-columns:46% 1fr;padding-block:70px}.service-preview-photo{clip-path:polygon(0 6%,100% 0,100% 94%,0 100%)}.service-preview-photo .editorial-photo{border-radius:0;min-height:350px;object-position:center}.service-detail-preview h2{font-size:36px}.service-preview-photo .photo-index{bottom:40px;left:20px;background:var(--brand);color:white}
.service-detail-preview.is-reverse{grid-template-columns:1fr 46%}.service-detail-preview.is-reverse>.service-preview-photo{grid-column:2;clip-path:polygon(0 0,100% 6%,100% 100%,0 94%)}.service-detail-preview.is-reverse>div{grid-column:1;grid-row:1}
.detail-photo-wrap{padding-top:40px}.detail-photo{clip-path:polygon(0 9%,100% 0,100% 91%,0 100%);border-radius:0;aspect-ratio:16/8;object-position:50% 22%}.detail-opening{gap:65px;padding-block:70px 90px}.detail-title h2{font-size:35px;font-weight:800}.issue-box{border-radius:0;border-left:3px solid var(--brand);padding:35px;background:#eff8fd}.issue-box .eyebrow{font-size:13px}.offering{background:white;border:0;border-top:3px solid var(--brand);border-radius:0;padding:30px}.offering .service-number{font-size:28px;font-family:Impact,sans-serif}.offering h3{font-size:23px}.related-services{padding-block:40px 70px}
.about-statement{text-align:left;max-width:1050px;padding-block:70px}.about-statement h2{font-size:54px;font-weight:800;line-height:1.5;letter-spacing:-.03em}.about-statement>p:not(.eyebrow){font-size:19px;max-width:820px;line-height:2.2}.about-photo{clip-path:polygon(0 8%,100% 0,100% 92%,0 100%);border-radius:0}.company-photo{clip-path:polygon(0 8%,100% 0,100% 92%,0 100%);border-radius:0;aspect-ratio:16/8}.company-section,#company{padding-top:70px;max-width:none;width:min(1200px,calc(100% - 96px))}
@media(max-width:1200px){.company-section,#company{width:calc(100% - 72px)}}
@media(max-width:767px){.company-section,#company{width:calc(100% - 40px)}}
.company-table{width:100%;max-width:none}.company-table dt{color:var(--brand)}.company-table>div{padding-block:30px;padding-inline:0;border-bottom-color:#c7dce9}
.mvv-lead{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:40px 0 48px}
.mvv-lead article{background:#fff;padding:32px 28px;border-top:3px solid var(--brand)}
.mvv-lead span{display:block;font-size:13px;font-weight:800;letter-spacing:.14em;color:var(--brand);margin-bottom:12px}
.mvv-lead h3{font-size:28px;font-weight:800;line-height:1.55;letter-spacing:-.02em;margin:0 0 16px}
.mvv-lead p{margin:0;color:#355066;line-height:1.95}
.mvv-values{margin-top:0}
.access-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,1.1fr);gap:48px;align-items:start;margin-top:36px}
.access-copy h3{font-size:22px;margin:0 0 10px}
.access-copy article{margin-bottom:32px}
.access-copy p{margin:0 0 12px;color:#355066}
.access-copy ul{margin:0;padding-left:1.2em;color:#355066}
.access-copy li{margin-bottom:4px}
.access-tel{font-weight:700;color:var(--ink);margin:8px 0 18px}
.access-map{width:100%;min-height:420px;border:0;background:#f0f8fc}
@media(max-width:960px){.mvv-lead{grid-template-columns:1fr}.mvv-lead h3{font-size:24px}.access-grid{grid-template-columns:1fr;gap:28px}.access-map{min-height:320px}}.empty-state{border-radius:0;background:#f0f8fc;border-top:3px solid var(--brand)}
.contact-layout{gap:70px}.contact-layout aside h2{font-size:32px;font-weight:800}.contact-photo{clip-path:polygon(0 8%,100% 0,100% 92%,0 100%);border-radius:0}.contact-form-embed{width:100%;min-width:0}.contact-form-embed iframe{width:100%;border:0;display:block}.form-notice{border-radius:0}.confirm-panel{border-radius:3px}.legal-content h2{border-left:3px solid var(--brand);padding-left:16px}
/* Scroll accents are optional: content remains visible without JavaScript. */
@media(prefers-reduced-motion:no-preference){.reveal-ready{opacity:.28;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal-ready.is-revealed{opacity:1;transform:translateY(0)}}
@media(min-width:1700px){.diagonal-hero{height:800px}.diagonal-copy{padding-top:140px}.diagonal-copy h1{font-size:118px}.diagonal-description{margin-top:28px}.diagonal-note{top:150px;left:45%}.diagonal-blue-plane{padding-top:23%}}
@media(max-width:1250px){.desktop-nav{gap:20px}.desktop-nav a{font-size:14px}.header-contact{min-width:188px}.header-inner{gap:23px}.logo{width:190px}.diagonal-hero{height:640px}.diagonal-copy{padding-top:108px;width:54%}.diagonal-copy h1{font-size:7vw;margin-bottom:22px}.diagonal-copy>.eyebrow{font-size:12px;gap:15px;letter-spacing:.18em}.diagonal-copy>.eyebrow:after{width:50px}.diagonal-description{font-size:15px;line-height:1.85}.diagonal-actions{gap:20px}.diagonal-actions .button{min-width:245px;font-size:17px;min-height:65px;padding:16px 22px}.diagonal-actions .text-link{font-size:14px}.diagonal-note{font-size:15px;left:44%;top:118px}.diagonal-blue-plane{padding:20% 5% 0 14%;width:34%}.diagonal-blue-plane>span{font-size:14px}.diagonal-blue-plane small{font-size:9px;margin-top:12px}.solution-english{font-size:32px}.solution-strip h2{font-size:20px}.solution-strip>a{padding-inline:22px}.solution-strip p{font-size:13px}.section-title{font-size:40px}.home-approach .section-title{font-size:50px}.home-approach{gap:45px}.service-row{grid-template-columns:42% 1fr 48px;gap:25px}.service-row:nth-child(even){grid-template-columns:48px 1fr 42%}.service-row h3{font-size:28px}.service-row .round-link{width:48px;height:48px}}
@media(max-width:960px){.site-header{height:90px}.home .site-header{position:sticky;top:0;z-index:100;background:#fff}.header-inner{padding-inline:28px}.header-contact{display:none}.mobile-menu:not([hidden]){top:90px}.diagonal-hero{height:560px}.diagonal-copy{padding-top:36px;width:62%;padding-left:4%}.diagonal-copy h1{font-size:7.4vw}.diagonal-description{font-size:15px;margin-bottom:22px}.diagonal-copy>.eyebrow{font-size:11px}.diagonal-note,.diagonal-ideas,.diagonal-visual-top,.diagonal-blue-a,.diagonal-blue-c{display:none}.diagonal-visual{clip-path:polygon(38% 0,100% 0,100% 100%,12% 100%);background-position:80% 42%;background-size:auto 120%}.diagonal-blue-plane{top:32%;height:40%;width:30%;padding:18% 12px 0 40px}.diagonal-blue-plane>span{font-size:12px}.diagonal-blue-plane small{display:none}.diagonal-actions{gap:20px;align-items:flex-start;flex-direction:column}.diagonal-actions .button{min-width:248px}.diagonal-inset{width:38%;height:34%;background-size:auto 140%}.diagonal-stroke{top:50%;width:66%;height:14px}.solution-strip{padding-inline:4%}.solution-english{font-size:27px}.solution-strip h2{font-size:18px}.solution-strip p{font-size:12px}.solution-strip>a{padding-inline:15px}.solution-strip>a>.icon{width:24px}.section{padding-block:80px}.home-approach .lead{font-size:20px}.home-approach:before{display:none}.service-row,.service-row:nth-child(even){grid-template-columns:36% 1fr 44px;gap:23px}.service-row:nth-child(even)>.service-row-visual{grid-column:1;grid-row:1}.service-row:nth-child(even)>div{grid-column:2;grid-row:1}.service-row:nth-child(even)>.round-link{grid-column:3;grid-row:1}.service-row h3{font-size:26px}.service-row-visual,.service-row-visual .editorial-photo{min-height:270px}.service-row .round-link{width:44px;height:44px}.process-grid li:not(:last-child):after{display:none}.contact-band h2{font-size:30px}.contact-band .button{min-width:230px}.page-intro h1{font-size:41px}.service-detail-preview{gap:35px;grid-template-columns:40% 1fr}.service-detail-preview h2{font-size:28px}.detail-opening{gap:30px}.detail-title h2{font-size:29px}.about-statement h2{font-size:44px}}
@media(max-width:767px){.header-inner{padding-inline:20px}.site-header{height:82px}.logo{width:175px}.mobile-menu:not([hidden]){top:82px}.diagonal-hero{height:auto;min-height:0;padding-bottom:230px}.diagonal-copy{padding:26px 20px 24px;width:100%;background:linear-gradient(90deg,#fff 68%,#ffffffb8)}.diagonal-copy>.eyebrow{font-size:11px;letter-spacing:.13em;gap:15px;margin-bottom:21px}.diagonal-copy>.eyebrow:after{width:40px}.diagonal-copy h1{font-size:clamp(45px,12.5vw,90px);line-height:1.12;letter-spacing:-.055em;margin-bottom:28px}.title-stroke:before{width:130%;height:12px;bottom:18%}.diagonal-description{font-size:14px;line-height:1.9;max-width:100%;margin-bottom:23px}.diagonal-description br{display:none}.diagonal-description{max-width:450px}.diagonal-actions{flex-direction:row;align-items:center;gap:18px;flex-wrap:wrap}.diagonal-actions .button{font-size:15px;min-width:210px;min-height:59px;padding:15px 19px;gap:20px}.diagonal-actions .text-link{font-size:13px}.diagonal-actions .button .icon{width:24px}.diagonal-visual{inset:auto 0 0 0;height:255px;background-position:82% 40%;background-size:auto 145%;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%);z-index:0}.diagonal-visual-top,.diagonal-blue-a,.diagonal-blue-c,.diagonal-ideas{display:none}.diagonal-inset{height:132px;width:39%;background-size:auto 150%;z-index:2}.diagonal-blue-plane{top:auto;bottom:78px;height:150px;width:31%;padding:0;z-index:3}.diagonal-blue-plane span{display:none}.diagonal-stroke{top:35%;height:12px;width:83%;z-index:3;opacity:.65;pointer-events:none}.diagonal-copy{z-index:4}.solution-strip{grid-template-columns:1fr;padding:0 20px;border-top:1px solid var(--brand)}.solution-strip>a,.solution-strip>a:first-child{border:0;border-bottom:1px solid #c8dfe9;padding:18px 40px 18px 43px;position:relative}.solution-number{position:absolute;top:22px;left:0;font-size:12px}.solution-number:after{display:none}.solution-english{font-size:29px;line-height:1.1}.solution-strip h2{font-size:18px;margin-top:6px}.solution-strip p{font-size:13px;padding:0;line-height:1.7}.solution-strip>a>.icon{right:0;bottom:29px;width:28px}.section{padding-block:65px}.section-title{font-size:32px;line-height:1.55}.eyebrow{font-size:13px;letter-spacing:.14em}.home-approach{gap:30px}.home-approach .section-title{font-size:42px}.home-approach .lead{font-size:18px}.approach-photo{aspect-ratio:3/2;margin-top:25px;max-height:none}.services-section:before{font-size:80px;top:32px;right:-10px}.section-heading{margin-bottom:25px}.section-heading>p{font-size:15px}.service-row,.service-row:nth-child(even){grid-template-columns:1fr 46px;gap:24px;padding-block:32px}.service-row-visual,.service-row:nth-child(even)>.service-row-visual{grid-column:1/-1;grid-row:auto;min-height:0;aspect-ratio:3/2}.service-row-visual .editorial-photo{min-height:0;aspect-ratio:3/2;object-position:center}.service-row>div,.service-row:nth-child(even)>div{grid-column:1;grid-row:auto}.service-row>.round-link,.service-row:nth-child(even)>.round-link{grid-column:2;grid-row:auto;align-self:end}.service-row h3{font-size:25px}.service-row .eyebrow{font-size:12px;margin-bottom:12px}.service-row .photo-index{bottom:28px}.service-row p{font-size:15px}.tags span{font-size:12px}.work-section .section-heading:after{width:100px;bottom:-10px}.process-grid{margin-top:42px;gap:27px}.process-grid h3{font-size:21px}.process-grid li>span{font-size:15px}.faq-grid{gap:16px}.faq-item summary{font-size:15px;line-height:1.8;padding-block:23px}.news-home .eyebrow{font-size:24px}.contact-band{padding-block:60px}.contact-band-inner{gap:35px}.contact-band .eyebrow{font-size:17px}.contact-band h2{font-size:30px}.contact-band:after{width:65%;right:-40%;height:150%}.contact-band:before{width:85%;bottom:26px}.contact-band .button{width:100%}.site-footer{padding-top:45px}.footer-links{gap:15px 20px}.page-intro{padding-block:38px 35px}.page-intro:after{width:100px;height:130px;opacity:.6}.page-intro>.eyebrow{font-size:24px}.page-intro h1{font-size:34px;overflow-wrap:anywhere}.page-intro>p:last-child{font-size:16px;padding-right:0}.service-detail-preview{grid-template-columns:1fr;gap:25px;padding-block:40px}.service-preview-photo .editorial-photo{min-height:0;aspect-ratio:3/2}.service-preview-photo .photo-index{bottom:28px}.service-detail-preview h2{font-size:28px}.detail-photo{aspect-ratio:3/2}.detail-opening{padding-block:35px 60px;gap:25px}.detail-title h2{font-size:28px}.issue-box{padding:25px}.offering{padding:27px}.offering h3{font-size:22px}.offering .service-number{font-size:25px}.about-statement{padding-block:45px}.about-statement h2{font-size:33px}.about-statement>p:not(.eyebrow){font-size:16px;line-height:2}.about-photo,.company-photo{aspect-ratio:3/2}.contact-layout{gap:28px}.contact-layout aside h2{font-size:28px}.legal-content h2{font-size:21px}.button{min-height:58px}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}.button,.button .icon{transition:none}}
@media(min-width:961px){.diagonal-copy h1{font-size:clamp(58px,6.2vw,100px);line-height:1.18}.diagonal-note{left:44%;top:128px;font-size:16px}}
@media(max-width:1250px){.calm-hero{grid-template-columns:minmax(200px,240px) minmax(0,1fr) minmax(220px,280px);min-height:560px}.calm-copy h1{font-size:clamp(24px,2.5vw,34px)}.calm-photo img,.calm-photo.is-right img{width:min(220px,22vw);height:min(270px,28vw)}.calm-float{transform:scale(.86);transform-origin:right center}}
@media(max-width:960px){.calm-hero{grid-template-columns:1fr 1fr;grid-template-areas:"copy copy" "left right";min-height:0;padding:8px 24px 20px;gap:18px}.calm-copy{padding:10px 8px 8px}.calm-copy h1{font-size:clamp(26px,5.4vw,36px)}.calm-copy h1 .hero-line{white-space:normal}.calm-lead{font-size:15px;margin-bottom:22px}.calm-copy .diagonal-actions{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center}.calm-photo{justify-self:center;padding:0}.calm-photo img,.calm-photo.is-right img{width:min(210px,42vw);height:min(250px,50vw)}.calm-float{display:none}.calm-script{font-size:15px;text-align:center;margin-right:0}.home .service-quick{grid-template-columns:1fr;gap:12px;padding:0 24px 24px}}
@media(max-width:767px){.calm-hero{padding:6px 16px 16px;gap:14px}.calm-copy h1{font-size:clamp(26px,8vw,36px)}.calm-tagline{font-size:13px}.calm-lead{font-size:14px}.calm-photo figcaption{font-size:12px}.home .service-quick{padding:0 16px 20px}}
/* Restore the original first view from before_gadget-corporate */
.site-header,.home .site-header,.interior .site-header{position:sticky;top:0;z-index:100;background:#fff}
.home .header-contact{background:linear-gradient(100deg,#008dbb,#0097bf);border-radius:0}
.hero .button,.hero-actions .button{background:linear-gradient(100deg,#008dbb,#0097bf);border-radius:0;min-height:62px}
.hero-workflow{display:grid;grid-template-columns:repeat(3,82px);gap:8px;transform:none;right:3%;top:170px}
.hero-workflow>div:last-child{grid-column:auto;justify-self:stretch;width:auto}
.hero-workflow:before{content:none;display:none}
@media(max-width:767px){.hero{display:flex;flex-direction:column}.hero-content{order:1;padding-bottom:8px}.hero-workflow{position:static;order:2;inset:auto;right:auto;top:auto;transform:none;width:calc(100% - 36px);max-width:420px;margin:8px auto 20px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.hero-workflow>div{width:auto;min-width:0;min-height:74px}.hero-mobile-photo{order:3}}
.hero .button:hover{background:#007ba3;box-shadow:0 8px 24px #008fbc22}
.home .service-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:1536px;margin:22px auto 0;padding:0 32px}
.home .service-card{border-radius:15px}
@media(max-width:1250px){.home .service-quick{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.home .service-quick{grid-template-columns:1fr;padding:0 20px;margin:20px auto 0}}
.news-list{list-style:none;margin:0 0 36px;padding:0}
.news-item{display:grid;grid-template-columns:148px minmax(0,1fr);gap:12px 28px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line)}
.news-list>li:first-child .news-item{border-top:1px solid var(--line)}
.news-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.news-item time{color:var(--muted);font-size:14px;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.news-cat{font-size:11px;font-weight:700;color:var(--brand);border:1px solid #b8dcea;padding:2px 10px;letter-spacing:.08em;white-space:nowrap}
.news-body h3{font-size:17px;margin:0;font-weight:700;line-height:1.7}
.news-body p{margin:8px 0 0;color:var(--muted);font-size:15px;line-height:1.9}
.news-home .text-link{margin-top:8px;display:inline-flex}
.news-link{display:block;color:inherit}
.news-link:hover .news-body h3{color:var(--brand)}
.news-article{padding-block:20px 80px;max-width:860px}
.news-article .news-meta{margin:8px 0 22px}
.news-article h1{font-size:36px;font-weight:800;letter-spacing:-.025em;margin:0 0 28px;line-height:1.5}
.news-article>p:not(.eyebrow){font-size:17px;line-height:2.1;color:#355066}
.news-pager{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}
.news-pager a{font-size:14px;line-height:1.7;color:var(--ink)}
.news-pager a:hover{color:var(--brand)}
@media(max-width:767px){.news-item{grid-template-columns:1fr;gap:8px;padding:18px 0}.news-body h3{font-size:16px}.news-page{padding-block:36px 70px}.news-article h1{font-size:28px}.news-pager{grid-template-columns:1fr}}
.footer-sns ul{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 0;padding:0;list-style:none}
.footer-sns a{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:#fff;transition:background .2s,color .2s,border-color .2s}
.footer-sns a:hover{background:var(--brand);border-color:var(--brand);color:#fff}
.footer-sns .sns-icon{font-size:18px;width:auto;height:auto;line-height:1;display:block}
.footer-sns a.is-note{width:auto;min-width:40px;padding-inline:10px}
.footer-sns .sns-note{font-size:13px;font-weight:800;letter-spacing:-.03em;line-height:1}
.footer-banners{margin:0 0 28px;padding:0 0 28px;border-bottom:1px solid var(--line)}
.footer-banners-label{margin:0 0 14px;font-size:13px;font-weight:800;letter-spacing:.12em;color:var(--muted)}
.footer-banner-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.footer-banner-list.is-single{grid-template-columns:minmax(0,360px);max-width:360px}
.note-banner-wrap{margin:36px 0 8px}
.note-banner{display:block;max-width:600px}
.note-banner img{width:100%;height:auto}
.footer-banner-list+.footer-banner-list{margin-top:12px}
.footer-banner-slot{min-height:80px;background:#f6fbfe;border:1px dashed #b8dcea;display:grid;place-items:center}
.footer-banner-slot a,.footer-banner-slot img{display:block;width:100%;height:100%;object-fit:contain}
.footer-banner-placeholder{color:#7a93a3;font-size:13px;font-weight:700;letter-spacing:.04em}
@media(max-width:767px){.footer-banner-list{grid-template-columns:1fr;gap:10px}.footer-banner-slot{min-height:72px}}
.header-inner,.site-footer.container{max-width:1600px;margin-inline:auto;padding-inline:4.2%;box-sizing:border-box}
.site-footer.container{width:100%}
.site-footer .logo{width:220px}
@media(max-width:1250px){.site-footer .logo{width:190px}}
@media(max-width:960px){.header-inner,.site-footer.container{padding-inline:28px}}
@media(max-width:767px){.header-inner,.site-footer.container{padding-inline:20px}.site-footer .logo{width:175px}}
.float-tools{position:fixed;right:184px;bottom:20px;z-index:200;display:flex;align-items:flex-end;gap:12px}
.page-top,.chatbot-launch{position:relative;right:auto;bottom:auto;display:grid;place-items:center;align-content:center;width:56px;height:56px;padding:0;gap:2px;background:var(--brand);color:#fff;font-size:10px;font-weight:800;letter-spacing:0;line-height:1.15;box-shadow:0 8px 20px #071e4033;border:0}
.page-top{display:none}
.page-top.is-visible{display:grid}
.page-top span{display:block;font-size:14px;font-weight:700;letter-spacing:0;line-height:1}
.page-top:hover,.chatbot-launch:hover{background:#007ba3;color:#fff}
.chatbot-icon{width:18px;height:18px;display:block}
.chatbot-mock{position:relative}
.chatbot-panel{position:absolute;right:0;bottom:68px;width:min(360px,calc(100vw - 32px));background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:0 16px 40px #071e4026;display:flex;flex-direction:column;max-height:min(460px,calc(100vh - 140px))}
.chatbot-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;background:var(--ink);color:#fff}
.chatbot-head p{margin:0;font-size:15px;font-weight:800}
.chatbot-head small{display:block;margin-top:2px;font-size:11px;letter-spacing:.06em;opacity:.8}
.chatbot-close{background:transparent;border:0;color:#fff;font-size:22px;line-height:1;padding:0 2px}
.chatbot-log{padding:16px;overflow:auto;display:grid;gap:10px;background:#f6fbfe}
.chatbot-msg{margin:0;padding:10px 12px;font-size:13px;line-height:1.7;max-width:90%}
.chatbot-msg.is-bot{background:#fff;border:1px solid var(--line);justify-self:start}
.chatbot-msg.is-user{background:#dff4fb;justify-self:end}
.chatbot-form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);background:#fff}
.chatbot-form input{flex:1;min-width:0;border:1px solid var(--line);padding:10px 12px;font-size:13px}
.chatbot-form button{background:var(--brand);color:#fff;border:0;padding:10px 14px;font-size:13px;font-weight:700;white-space:nowrap}
@media(max-width:767px){.float-tools{right:176px;bottom:20px;gap:8px}.page-top,.chatbot-launch{width:50px;height:50px;font-size:9px}.chatbot-icon{width:16px;height:16px}.chatbot-panel{bottom:62px;width:min(320px,calc(100vw - 24px))}}
.contact-band .button.button-white{background:#fff;color:var(--ink);border:1px solid #fff;box-shadow:none}
.contact-band .button.button-white:hover{background:#0070b8;color:#fff;border-color:#0070b8;box-shadow:none}
.contact-band{overflow:hidden}
.contact-band:after{content:none;display:none}
.contact-band-inner{display:block}
.contact-band-copy{max-width:560px;position:relative;z-index:2}
.contact-band-copy .button{margin-top:28px}
.contact-band-visual{position:absolute;right:-15%;top:-20%;width:53%;height:140%;transform:skewX(-28deg);overflow:hidden;z-index:0;pointer-events:none}
.contact-band-visual img{width:100%;max-width:none;height:100%;object-fit:cover;object-position:50% 42%;transform:skewX(28deg);display:block}
.contact-band-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(130deg,rgba(0,182,228,.72),rgba(0,90,170,.8));z-index:1}
@media(max-width:767px){.contact-band-copy .button{margin-top:22px;width:100%}.contact-band-visual{position:relative;right:auto;top:auto;width:100%;height:220px;transform:none;margin-top:28px}.contact-band-visual img{width:100%;height:100%;transform:none}}
.page-intro:after{content:none;display:none}
.work-education{margin-top:70px;padding-top:48px;border-top:1px solid var(--line)}
.work-education h3{font-size:28px;font-weight:800;margin:8px 0 14px;letter-spacing:-.02em}
.work-education>p{max-width:720px;color:var(--muted);margin-bottom:28px}
.work-education-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.work-education-list li{padding-top:0}
.work-education-photo{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:50% 28%;margin:0 0 16px;border-radius:0}
.work-education-list span{display:block;font-size:13px;font-weight:800;color:var(--brand);letter-spacing:.08em;margin-bottom:8px}
.work-education-list h4{font-size:20px;margin:0 0 10px}
.work-education-list p{margin:0;font-size:15px;line-height:1.85;color:#355066}
@media(max-width:767px){.work-education{margin-top:48px;padding-top:32px}.work-education h3{font-size:22px}.work-education-list{grid-template-columns:1fr;gap:28px}}
.works-page{padding-top:36px}.works-empty{padding:48px 36px;margin-bottom:28px}.works-empty p{margin:0 0 10px;color:#355066}.works-empty p:last-child{margin-bottom:0}
.works-note{margin:0 0 36px;padding:12px 16px;font-size:14px;color:#355066;background:#f0f8fc;border-left:3px solid var(--brand)}
.works-featured{margin:0 0 48px;padding:0;list-style:none}
.works-item.is-featured{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center;padding-bottom:48px;border-bottom:1px solid #bed5e2}
.works-item.is-featured .works-photo{aspect-ratio:4/3;margin:0;clip-path:polygon(0 6%,100% 0,100% 94%,0 100%)}
.works-item.is-featured h2{font-size:32px;font-weight:800;letter-spacing:-.03em;margin:0 0 16px;line-height:1.45}
.works-item.is-featured .works-summary{font-size:16px;line-height:2}
.works-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px;margin:0 0 36px;padding:0;list-style:none}
.works-photo{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:50% 28%;margin:0 0 16px;border-radius:0}
.works-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 10px}
.works-sample{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--brand);border:1px solid #8ec9de;padding:2px 8px}
.works-cat{font-size:13px;font-weight:800;color:var(--brand);letter-spacing:.06em}
.works-industry{font-size:13px;font-weight:700;color:#506479}
.works-item h2{font-size:22px;margin:0 0 10px}
.works-result{margin:0 0 10px;font-size:16px;font-weight:800;color:var(--ink);line-height:1.6}
.works-summary{margin:0;font-size:15px;line-height:1.85;color:#355066}
@media(max-width:960px){.works-item.is-featured{grid-template-columns:1fr;gap:22px;padding-bottom:36px}.works-item.is-featured h2{font-size:26px}.works-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.works-list{grid-template-columns:1fr;gap:28px}.works-empty{padding:32px 22px}.works-note{margin-bottom:28px}}
@media(max-width:960px){.service-detail-preview.is-reverse{grid-template-columns:1fr 40%}}
@media(max-width:767px){.service-detail-preview.is-reverse{grid-template-columns:1fr}.service-detail-preview.is-reverse>.service-preview-photo,.service-detail-preview.is-reverse>div{grid-column:auto;grid-row:auto}}
.material-icons-outlined{font-family:'Material Icons Outlined';font-weight:400;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;display:inline-flex;align-items:center;justify-content:center;-webkit-font-smoothing:antialiased}
.icon.material-icons-outlined{font-size:32px;width:1em;height:1em;flex-shrink:0}
.button .icon{font-size:28px}
.hero-workflow .icon{font-size:28px}
.service-card>.icon{font-size:48px}
.service-card .card-bottom .icon{font-size:22px}
.check-list .icon{font-size:24px;height:1em}
.service-row-icon .icon{font-size:56px}
.service-preview-label .icon{font-size:95px}
.text-link .icon{font-size:18px}
.round-link .icon{font-size:28px}
@media(min-width:961px){.menu-toggle,.mobile-menu{display:none!important}}
@media(max-width:960px){.menu-toggle{gap:0;display:grid;place-items:center}.menu-toggle .icon,.menu-toggle .material-icons-outlined{width:24px;height:24px;font-size:24px;line-height:1;margin:0;background:none;transform:none}.menu-toggle[aria-expanded=true] span:first-child,.menu-toggle[aria-expanded=true] span:last-child,.menu-toggle[aria-expanded=true] .icon,.menu-toggle[aria-expanded=true] .material-icons-outlined{transform:none;translate:0}}
.chatbot-icon.material-icons-outlined{font-size:18px;width:18px;height:18px}
.chatbot-close .icon{font-size:20px}
.page-top .icon{font-size:16px}
.faq-plus.icon{font-size:26px;margin-left:auto}
@media(max-width:767px){.chatbot-icon.material-icons-outlined{font-size:16px;width:16px;height:16px}.diagonal-actions .button .icon{width:24px;font-size:24px}}
