:root{--navy:#082758;--navy2:#06265a;--blue:#0869cb;--royal:#116bd3;--sky:#46acf0;--ice:#e9f5ff;--muted:#57708c;--line:#d9e8f7;--max:1310px;--shadow:0 10px 30px rgba(33,83,140,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--navy);background:#f7fbff;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:15px;letter-spacing:.01em}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}img{max-width:100%;display:block}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #75bfff;outline-offset:3px}.container{width:min(var(--max),calc(100% - 84px));margin-inline:auto}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-header{height:84px;background:#fff;box-shadow:0 1px 0 rgba(12,55,107,.08);position:relative;z-index:40}.header-inner{width:min(1352px,calc(100% - 70px));height:100%;margin:auto;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;flex:0 0 auto;gap:10px;min-width:0}.brand .symbol{width:55px;height:55px;object-fit:contain}.brand .wordmark{width:215px;height:auto;object-fit:contain}.site-nav{display:flex;align-items:center;justify-content:center;gap:clamp(12px,1.7vw,28px);margin-left:auto;white-space:nowrap}.site-nav a{font-size:13.5px;font-weight:800;transition:color .18s}.site-nav a.active,.site-nav a:hover{color:#006fd0}.header-cta{background:#0865d4;color:white;border-radius:12px;padding:15px 20px;font-weight:800;font-size:13px;white-space:nowrap;margin-left:auto;box-shadow:0 3px 12px #2475d71a}.header-cta:hover{background:#0449a3;color:#fff}.hamburger{display:none;border:0;background:transparent;color:var(--navy);height:42px;width:44px}.hamburger span{display:block;background:currentColor;height:2px;width:23px;margin:5px auto;border-radius:2px}
.hero{position:relative;height:360px;background:#f4faff;overflow:hidden;isolation:isolate}.hero-photo{position:absolute;inset:0 0 0 27%;background-image:url('hero-consultation.webp');background-position:center 43%;background-size:cover;z-index:-2}.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fff 0%,#fff 22%,rgba(255,255,255,.93) 34%,rgba(255,255,255,.53) 46%,rgba(255,255,255,.02) 64%)}.hero::after{content:"";position:absolute;left:-160px;bottom:-230px;width:410px;height:350px;border-radius:50%;border:24px solid rgba(173,222,253,.36);box-shadow:0 0 0 28px rgba(179,226,252,.14);pointer-events:none}.hero-content{height:100%;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:10px 0 30px 18px}.hero-eyebrow{color:#20528c;font-size:15px;font-weight:800;letter-spacing:.16em;margin:0 0 15px}.hero h1{font-weight:900;color:#072957;font-size:clamp(33px,3.25vw,52px);line-height:1.16;letter-spacing:.018em;margin:0 0 14px;text-shadow:0 1px 0 #fff}.hero h1 em{font-style:normal;color:#0d6fd6}.hero-copy{font-size:18px;font-weight:800;line-height:1.45;margin:0 0 20px;color:#082f63}.hero-copy strong{font-weight:900}.hero-buttons{display:flex;gap:13px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:12px;border:1.5px solid var(--royal);padding:12px 24px;font-size:14px;font-weight:800;transition:transform .15s,background .15s;min-width:153px;min-height:47px}.btn:hover{transform:translateY(-2px)}.btn-primary{background:#0b65d2;color:#fff;box-shadow:0 5px 16px #0665cc22}.btn-primary:hover{background:#034ca8;color:#fff}.btn-outline{background:#fff;color:#0753ad}.btn-outline:hover{background:#eef7ff;color:#0753ad}.hero-noa{position:absolute;left:338px;bottom:2px;z-index:2;display:flex;align-items:center;gap:8px;pointer-events:none}.hero-noa img{width:120px;height:142px;object-fit:contain;object-position:bottom}.noa-talk{font-size:13px;font-weight:800;line-height:1.35;transform:rotate(-7deg);color:#0b62bf;text-shadow:0 1px #fff;padding-top:6px}.noa-talk small{display:block;font-size:11px;transform:rotate(7deg);margin-top:12px;color:#124f8a}.hero-image-note{position:absolute;bottom:8px;right:5%;color:#fff;font-size:9px;background:rgba(3,25,60,.36);border-radius:3px;padding:3px 6px}
.metric-shell{position:relative;z-index:3;margin-top:-25px}.metric-card{background:rgba(255,255,255,.97);padding:12px 12px;border-radius:14px;box-shadow:0 9px 24px rgba(21,67,129,.09);display:grid;grid-template-columns:repeat(4,1fr);min-height:92px}.metric{display:flex;align-items:center;gap:15px;padding:9px 19px;border-right:1px solid #dbe7f4;min-width:0}.metric:last-child{border-right:0}.metric-ico{flex:0 0 52px;width:52px;height:52px;display:grid;place-items:center;color:#0767d4;background:#f0f7fe;border-radius:50%;font-size:27px}.metric-ico svg{width:28px;height:28px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round}.metric-label{font-size:13px;font-weight:800;color:#245085;white-space:nowrap}.metric-value{color:#0752a8;font-weight:900;font-size:28px;line-height:1.13;white-space:nowrap}.metric-value.txt{font-size:20px;line-height:1.25;white-space:normal}.metric-foot{display:block;color:#4e7091;font-size:10px;margin-top:3px}
.section-kicker{display:block;font-size:11px;letter-spacing:.24em;text-align:center;color:#4d9ae6;font-weight:800}.sec-heading{font-size:26px;font-weight:900;text-align:center;letter-spacing:.045em;margin:5px 0}.sec-lead{text-align:center;font-size:13px;line-height:1.7;color:#315888;margin:4px 0 0}.service-section{padding:32px 0 27px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}.service-card{background:white;display:flex;align-items:center;min-height:109px;border:1px solid #e4edf7;border-radius:12px;box-shadow:0 3px 10px #0a3c7910;overflow:hidden;transition:transform .15s,box-shadow .15s}.service-card:hover{transform:translateY(-3px);box-shadow:0 12px 22px #0b5ca61a}.service-card>img{height:108px;width:37%;object-fit:cover;flex:0 0 37%}.service-info{min-width:0;flex:1;padding:10px 8px 10px 17px}.service-info h3{font-size:17px;margin:0 0 5px;font-weight:900}.service-info p{font-size:12px;margin:0;color:#5c7090;line-height:1.5}.service-arrow{margin-right:12px;display:grid;place-items:center;width:31px;height:31px;flex:0 0 31px;color:#0065d0;border-radius:100%;background:#eaf5ff;font-weight:900}
.reasons{padding:0 0 14px;position:relative;overflow:hidden}.reasons:before{content:"";pointer-events:none;position:absolute;inset:auto 0 -44px;height:158px;background:linear-gradient(0deg,rgba(185,219,247,.32),rgba(236,248,255,0)),url('skyline.svg') center bottom/cover no-repeat;opacity:.82}.reasons .container{position:relative}.reason-title{display:flex;gap:15px;justify-content:center;align-items:baseline;margin-bottom:12px}.reason-title .section-kicker{font-size:11px}.reason-title .sec-heading{font-size:23px;margin:0}.reason-title .sec-tagline{font-size:12px;font-weight:700;color:#2a6096;border-left:1px solid #b2d7ff;padding-left:16px;line-height:1.5}.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.reason-item{border:1px solid #e6eff9;background:#ffffffeb;box-shadow:0 3px 16px #0840730c;border-radius:11px;min-height:94px;padding:16px 19px;display:flex;gap:12px;align-items:flex-start}.reason-icon{color:#096bd6;font-size:20px;flex:none}.reason-item h3{font-size:15px;font-weight:900;margin:1px 0 6px}.reason-item p{margin:0;color:#57708c;font-size:12px;line-height:1.6}
.contact-band{background:linear-gradient(115deg,#07498f,#0759ae 49%,#0b4485);color:#fff;position:relative;overflow:hidden;padding:19px 0 20px;margin-top:4px}.contact-band:before{content:"";background:url('skyline.svg') center bottom/cover no-repeat;opacity:.2;position:absolute;inset:0;filter:brightness(.8)}.contact-inner{position:relative;display:flex;align-items:center;gap:50px}.contact-copy{flex:1}.contact-copy .label{font-size:11px;font-weight:700;letter-spacing:.17em}.contact-copy h2{font-size:23px;line-height:1.25;font-weight:900;margin:4px 0 7px}.contact-copy p{font-size:13px;line-height:1.65;margin:0}.contact-panel{display:grid;grid-template-columns:1fr 1.25fr auto;align-items:center;gap:17px;border:1px solid #e7f2ff;background:white;border-radius:13px;color:var(--navy);padding:14px 17px;min-width:0;flex:0 1 770px;box-shadow:0 5px 20px #00377740}.contact-unit{display:flex;align-items:center;gap:13px;min-width:0;padding-right:13px;border-right:1px solid #d3e1f0}.contact-unit:nth-child(2){border:0}.contact-unit .circle{display:grid;place-items:center;width:45px;height:45px;background:#ecf5ff;color:#056bd5;border-radius:50%;flex:none;font-size:20px}.contact-unit small{font-size:11px;color:#375b83;font-weight:800}.contact-unit strong{font-size:24px;color:#063375;white-space:nowrap}.contact-unit .email{font-size:13px;white-space:nowrap;font-weight:900;color:#0d65ba}.contact-unit span.sub{display:block;color:#547596;font-size:10px;white-space:nowrap}.contact-panel .btn{min-width:150px;font-size:12px;padding:11px 13px}
.site-footer{background:white;padding:22px 0 23px}.footer-row{display:flex;align-items:center;gap:24px}.footer-brand .symbol{width:47px;height:47px}.footer-brand .wordmark{width:170px}.footer-main{flex:1}.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 11px}.footer-nav a{font-size:11px;font-weight:700;color:#47618a}.footer-nav a:hover{color:var(--blue)}.footer-fine{color:#6882a0;font-size:10px;line-height:1.7;white-space:nowrap}.to-top{margin-left:8px;display:grid;place-items:center;border:0;border-radius:50%;width:37px;height:37px;flex:0 0 37px;background:#176cba;color:#fff;font-size:20px}.site-footer .copyright{font-size:10px;color:#72869b}
/* Inner pages */
.inner-hero{padding:56px 0 45px;background:radial-gradient(ellipse at right,rgba(147,210,254,.35),transparent 62%),linear-gradient(#f4fbff,#fff);border-bottom:1px solid #e4f0fb}.inner-hero .kicker{font-size:12px;letter-spacing:.18em;color:#2483d4;font-weight:800}.inner-hero h1{font-size:clamp(28px,3.4vw,43px);margin:8px 0 8px;font-weight:900}.inner-hero p{margin:0;font-size:14px;color:#597290}.breadcrumb{font-size:12px;color:#6884a3;margin:0 0 20px}.breadcrumb a{color:#446aa0}.inner-section{padding:42px 0 72px;background:#fff}.article-layout{max-width:980px;margin:auto}.article-layout.narrow{max-width:870px}.article-layout h2{font-size:25px;line-height:1.4;color:#072c5e;margin:42px 0 16px;padding-bottom:11px;border-bottom:2px solid #dceefc}.article-layout h3{font-size:18px;color:#074995;margin:26px 0 10px}.article-layout p{font-size:15px;line-height:2.05;color:#344a66;margin:0 0 17px}.article-layout ul,.article-layout ol{color:#344a66;font-size:15px;line-height:2.1;padding-left:25px}.article-layout .policy-intro{font-weight:700;color:var(--navy)}.article-layout .quote{background:#f0f7ff;border-left:4px solid #2482dd;padding:22px 24px;margin:20px 0;color:#134880;font-weight:800}.page-card{background:#fff;border:1px solid #e3edf6;border-radius:15px;padding:26px;box-shadow:var(--shadow)}.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.split-layout img{width:100%;max-height:360px;object-fit:cover;border-radius:15px}.notice{border:1px solid #cfe2f7;background:#f5faff;color:#345874;padding:16px 19px;border-radius:10px;font-size:13px;line-height:1.7}.data-table{border-collapse:collapse;width:100%;max-width:690px;margin:16px 0 32px;font-size:14px}.data-table th{background:#e9f5ff;color:#054b94;text-align:left}.data-table th,.data-table td{padding:12px 17px;border-bottom:1px solid #dce8f6}.data-table tbody tr:nth-child(even){background:#fbfdff}.fd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:26px 0 38px}.fd-card{padding:25px 19px;border-radius:13px;background:#f3f9ff;border:1px solid #e0effb}.fd-card .big{font-size:27px;font-weight:900;color:#075bad}.fd-card .tag{font-size:12px;color:#5d7392}.fd-card p{font-size:12px;line-height:1.5;margin:4px 0}.about-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:25px 0}.fact{display:flex;gap:16px;align-items:baseline;border-bottom:1px solid #e3edf7;padding:10px 0;font-size:14px}.fact dt{flex:0 0 125px;font-weight:800;color:#547092}.fact dd{margin:0;line-height:1.7;color:#15395f}.lead-link{color:#0966c6;font-weight:800}.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.service-detail{border:1px solid #e2edf7;border-radius:15px;overflow:hidden;background:white;box-shadow:var(--shadow)}.service-detail img{height:220px;object-fit:cover;width:100%}.service-detail .info{padding:20px 24px}.service-detail h2{border:0;padding:0;margin:0 0 12px;font-size:22px}.service-detail p{font-size:14px}.recruit-photos{display:grid;grid-template-columns:1fr 1fr;gap:15px}.recruit-photos img{border-radius:12px;object-fit:cover;width:100%;height:210px}.contact-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:26px 0}.contact-method{background:#f4faff;padding:24px;border-radius:12px;border:1px solid #dfedfa}.contact-method small{font-size:11px;color:#507697}.contact-method strong{font-size:18px;display:block;margin:8px 0;color:#0959b2;overflow-wrap:anywhere}.contact-method p{font-size:12px;margin:4px 0}.contact-hint{margin-top:40px}.email-button{display:inline-flex;align-items:center;gap:12px;background:#096bd1;color:#fff;font-weight:800;border-radius:10px;padding:14px 25px}.email-button:hover{background:#034fa3;color:white}.blog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.blog-preview{border:1px solid #dfebf8;border-radius:14px;overflow:hidden;background:white;box-shadow:var(--shadow)}.blog-preview .visual{height:225px;background:linear-gradient(120deg,#ecf9ff,#cfeaff);display:grid;place-items:center}.blog-preview .visual img{height:190px;object-fit:contain}.blog-preview .content{padding:22px}.blog-preview time{color:#6e83a0;font-size:12px}.blog-preview h2{margin:10px 0;font-size:20px;border:0;padding:0}.blog-preview p{font-size:13px;line-height:1.8}.center-cta{text-align:center;margin-top:36px}.privacy-content p{font-size:13.5px;line-height:1.88;margin-bottom:14px}.privacy-content h3{margin-top:25px}.privacy-content ul{font-size:13.5px}
/* Accessibility and fluid spacing */
@media(max-width:1220px){.brand .symbol{width:48px;height:48px}.brand .wordmark{width:175px}.header-inner{gap:13px;width:calc(100% - 38px)}.site-nav{gap:13px}.site-nav a{font-size:12px}.header-cta{padding:13px 12px}.hero-noa{left:344px}.contact-panel{gap:10px;padding:11px}.contact-unit strong{font-size:19px}.contact-unit .email{font-size:11px}}
@media(max-width:980px){.container{width:min(100% - 40px,780px)}.site-header{height:73px}.brand .wordmark{width:178px}.header-cta{margin-left:auto}.site-nav{position:absolute;top:73px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;background:#fff;box-shadow:0 15px 30px #05346a20;padding:18px 26px;gap:0}.site-nav.open{display:flex}.site-nav a{font-size:14px;padding:13px 4px;border-bottom:1px solid #e4ecf4}.hamburger{display:block}.hero{height:380px}.hero-content{padding-left:0}.hero-noa{left:335px;bottom:0}.metric{gap:10px;padding:8px}.metric-label{font-size:10px}.metric-value{font-size:23px}.metric-value.txt{font-size:16px}.metric-ico{width:38px;height:38px;flex-basis:38px}.service-card>img{width:35%;flex-basis:35%}.service-info h3{font-size:14px}.service-info p{font-size:11px}.service-info{padding-left:8px}.service-arrow{margin-right:6px}.contact-inner{flex-direction:column;gap:13px;align-items:stretch}.contact-panel{flex-basis:auto}.footer-row{flex-wrap:wrap}.footer-main{order:3;flex-basis:100%}.footer-fine{margin-left:auto}}
@media(max-width:640px){.container{width:calc(100% - 32px)}.site-header{height:66px}.header-inner{width:calc(100% - 24px);gap:10px}.brand{gap:3px}.brand .symbol{width:40px;height:40px}.brand .wordmark{width:153px}.site-nav{top:66px}.header-cta{font-size:10px;padding:9px 10px;border-radius:8px}.hamburger{height:35px;width:34px}.hamburger span{width:22px}.hero{height:565px;background:#ecf8ff}.hero-photo{inset:218px 0 0 0;background-position:54% 40%;background-size:cover}.hero::before{background:linear-gradient(180deg,#fff 0%,#fff 22%,#fffffff0 41%,#ffffff00 69%)}.hero::after{left:-200px;bottom:-230px}.hero-content{justify-content:flex-start;padding-top:35px}.hero-eyebrow{font-size:12px;margin-bottom:10px}.hero h1{font-size:clamp(33px,8.2vw,43px);line-height:1.18;margin-bottom:10px;letter-spacing:0}.hero-copy{font-size:14px;line-height:1.5;margin-bottom:16px;max-width:295px}.hero-buttons{gap:8px}.btn{min-width:112px;padding:10px 12px;min-height:42px;font-size:12px;gap:5px;border-radius:9px}.hero-noa{left:auto;right:0;bottom:13px;gap:2px;align-items:end}.hero-noa img{width:98px;height:120px}.noa-talk{font-size:10px;background:#ffffffde;border-radius:9px;padding:8px;transform:rotate(-4deg);margin-bottom:16px}.noa-talk small{font-size:8px;margin-top:4px}.hero-image-note{bottom:5px;left:8px;right:auto}.metric-shell{margin-top:0}.metric-card{grid-template-columns:1fr 1fr;padding:8px;gap:3px;border-radius:0 0 13px 13px}.metric{min-height:75px;padding:8px;border-right:0}.metric:nth-child(odd){border-right:1px solid #dfeaf5}.metric:nth-child(-n+2){border-bottom:1px solid #dfeaf5}.metric-ico{width:35px;height:35px;flex-basis:35px}.metric-ico svg{width:21px;height:21px}.metric-label{font-size:10px;white-space:normal}.metric-value{font-size:22px}.metric-value.txt{font-size:14px}.metric-foot{font-size:9px}.service-section{padding:37px 0 27px}.sec-heading{font-size:23px}.sec-lead{font-size:12px}.service-grid,.reason-grid{grid-template-columns:1fr;gap:10px;margin-top:20px}.service-card{min-height:105px}.service-card>img{height:106px;width:36%;flex-basis:36%}.service-info{padding-left:17px}.service-info h3{font-size:17px}.service-info p{font-size:12px}.service-arrow{margin-right:18px}.reason-title{flex-direction:column;gap:3px;align-items:center}.reason-title .sec-tagline{text-align:center;border:0;padding:0}.reason-item{min-height:82px}.reasons{padding-bottom:29px}.contact-band{padding:26px 0}.contact-copy h2{font-size:23px}.contact-inner{gap:18px}.contact-panel{grid-template-columns:1fr;gap:13px}.contact-unit{border-right:0;border-bottom:1px solid #d7e5f2;padding:0 0 12px}.contact-unit:nth-child(2){border-bottom:0}.contact-unit .email{font-size:14px}.contact-panel .btn{width:100%}.site-footer{padding:24px 0}.footer-row{display:grid;grid-template-columns:1fr auto;gap:16px}.footer-main{grid-column:1/-1;order:0}.footer-nav{justify-content:flex-start}.footer-fine{margin:0}.to-top{grid-row:1;grid-column:2}.inner-hero{padding:34px 0 31px}.inner-hero h1{font-size:29px}.inner-section{padding:28px 0 54px}.article-layout h2{font-size:21px;margin-top:28px}.article-layout p{font-size:14px}.split-layout,.service-list,.contact-methods,.fd-grid,.about-facts,.blog-grid,.recruit-photos{grid-template-columns:1fr}.fact dt{flex-basis:100px}.contact-methods{gap:10px}.page-card{padding:16px}.article-layout .quote{padding:18px}.data-table{font-size:12px}.data-table th,.data-table td{padding:10px}.service-detail img{height:200px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Fine adjustments after first browser render */
.contact-unit small,.contact-unit strong{display:block}
.hero-noa{left:370px}
@media(max-width:980px){.hero-noa{left:355px}}
@media(max-width:640px){
 .brand .symbol{width:34px;height:34px}
 .brand .wordmark{width:140px}
 .header-cta{font-size:9px;padding:8px 7px;letter-spacing:-.035em}
 .hero-noa{left:auto;right:0}
 .contact-unit strong{white-space:normal;overflow-wrap:anywhere}
 .contact-unit .email{white-space:normal;font-size:12px;overflow-wrap:anywhere}
}

/* 2026-10 Enhancement: editorial photography, illustrated journey, official Instagram destination */
html{scroll-padding-top:90px}
.service-card,.reason-item{transition:transform .36s cubic-bezier(.22,1,.36,1),box-shadow .36s,border-color .36s}
.service-card:hover,.reason-item:hover{transform:translateY(-6px);box-shadow:0 19px 38px #0c55991c}
.service-card>img{transition:transform .7s cubic-bezier(.22,1,.36,1)}
.service-card:hover>img{transform:scale(1.065)}
.hero-photo{animation:heroZoom 16s ease-out both}
@keyframes heroZoom{0%{transform:scale(1.055)}100%{transform:scale(1)}}
.hero-noa>img{animation:noaFloat 5s ease-in-out infinite;transform-origin:50% 85%}
@keyframes noaFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-7px) rotate(2deg)}}
[data-reveal]{opacity:1;transform:none}
.motion-enabled [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .75s cubic-bezier(.2,.8,.2,1)}
.motion-enabled [data-reveal].is-visible{opacity:1;transform:none}
.visual-story{position:relative;background:#fff;padding:93px 0 88px;overflow:hidden}
.visual-story::before{content:'';position:absolute;width:420px;height:420px;right:-170px;top:-190px;border-radius:50%;background:radial-gradient(circle,#e8f6ff 5%,#ffffff00 70%);pointer-events:none}
.visual-story-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(40px,6vw,100px);align-items:center}
.visual-story-photos{height:385px;position:relative;min-width:0}
.story-main-photo{position:absolute;inset:4% 30% 6% 1%;overflow:hidden;border-radius:25px;box-shadow:0 23px 48px #06519c20}
.story-small-photo{position:absolute;top:16%;right:0;width:44%;height:66%;overflow:hidden;border-radius:21px;box-shadow:0 24px 42px #0856a922;border:7px solid #fff}
.story-main-photo img,.story-small-photo img{width:100%;height:100%;object-fit:cover}
.story-main-photo img{object-position:47% 50%}
.image-label{position:absolute;bottom:18px;left:18px;background:#fffffff0;color:#165c9e;border-radius:5px;padding:6px 11px;font-size:10px;font-weight:800;letter-spacing:.16em}
.story-stamp{position:absolute;right:7%;bottom:-7px;border:5px solid #fff;background:#dff4ff;border-radius:22px;padding:9px 15px;box-shadow:0 13px 26px #0351aa20;display:flex;align-items:center;gap:7px;transform:rotate(-7deg)}
.story-stamp img{width:65px;height:65px;object-fit:contain}.story-stamp span{font-size:11px;letter-spacing:.15em;color:#0668bc;font-weight:900}
.visual-story-heading{font-size:clamp(29px,3.3vw,45px);letter-spacing:-.045em;line-height:1.42;margin:10px 0 18px;color:#082758}
.visual-story-heading em{color:#0d78d5;font-style:normal}
.visual-story-lead{font-size:17px;line-height:1.95;font-weight:600;color:#46607d;margin:0 0 19px}
.story-highlights{display:grid;gap:2px;border-top:1px solid #e1eaf4}
.story-highlight{display:flex;gap:16px;align-items:center;padding:17px 4px;font-weight:800;font-size:14px;border-bottom:1px solid #e1eaf4;transition:padding .2s,background .2s;color:#0b3568}
.story-highlight:hover{padding-left:14px;background:#f7fbff}
.highlight-symbol{font-size:11px;font-weight:800;color:#1281e0;letter-spacing:.08em}
.highlight-arrow{margin-left:auto;color:#1785df;font-size:19px}
.support-steps{position:relative;padding:80px 0 75px;background:linear-gradient(180deg,#f5faff,#ebf6ff);overflow:hidden}
.support-steps:after{content:'';position:absolute;inset:auto -100px -310px -100px;height:440px;pointer-events:none;background:radial-gradient(ellipse,#ccecff80,transparent 65%)}
.section-intro{text-align:center;position:relative;z-index:1}
.steps-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:35px;position:relative;z-index:1}
.steps-track:before{content:'';position:absolute;top:68px;left:13%;right:13%;border-top:2px dashed #a7c9e9}
.step-card{position:relative;background:#fff;border:1px solid #d9e8f8;border-radius:18px;padding:25px 16px 21px;text-align:center;box-shadow:0 10px 28px #0c549b12;min-height:235px}
.step-icon{height:90px;width:90px;display:grid;place-items:center;margin:0 auto 12px;border-radius:50%;background:linear-gradient(150deg,#edf9ff,#d6ecff);position:relative;border:6px solid white;box-shadow:0 0 0 1px #d1e6fa}
.step-icon svg{width:50px;height:50px;stroke:#0666b9;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;fill:none}
.step-id{font-size:10px;font-weight:900;color:#2185d7;letter-spacing:.16em;display:block}
.step-card h3{font-size:17px;margin:5px 0 9px;color:#0b3568}
.step-card p{font-size:12px;color:#607c98;margin:0;line-height:1.65}
.support-steps .center-cta{position:relative;z-index:1;margin-top:29px}
.instagram-section{background:#fff;padding:85px 0 86px}
.instagram-header{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:28px}
.instagram-header .sec-heading{text-align:left;margin:8px 0 8px;font-size:clamp(23px,2.5vw,34px)}
.insta-intro{margin:0;color:#59738f;font-size:14px;line-height:1.7}
.instagram-follow{display:inline-flex;gap:10px;align-items:center;padding:13px 19px;background:#f5faff;color:#095cb5;border:1px solid #cbdff5;border-radius:100px;white-space:nowrap;font-size:15px;font-weight:850;transition:background .2s,transform .2s}
.instagram-follow svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.9;fill:none}
.instagram-follow:hover{background:#e3f3ff;transform:translateY(-3px)}
.instagram-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.insta-feature{display:block;background:#fff;border:1px solid #dae7f3;border-radius:18px;box-shadow:0 10px 28px #0b559612;overflow:hidden;transition:transform .36s,box-shadow .36s}
.insta-feature:hover{transform:translateY(-7px);box-shadow:0 22px 40px #0a559924}
.insta-card-visual{position:relative;display:grid;place-items:center;min-height:240px;overflow:hidden;isolation:isolate}
.insta-card-visual:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#042d5f22,transparent 48%)}
.insta-theme-safety .insta-card-visual{background:linear-gradient(145deg,#0083d1,#2ec2e8 62%,#c8f3ff)}
.insta-theme-safety .insta-card-visual>svg{height:158px;width:158px;fill:#fff3;stroke:#fff;stroke-width:5;filter:drop-shadow(0 15px 12px #003e7939);stroke-linecap:round;stroke-linejoin:round}
.insta-theme-safety .insta-card-visual>svg path:nth-child(2){stroke:#fff;stroke-width:8}
.insta-card-light{position:absolute;border:1px solid #fff7;width:390px;height:390px;border-radius:50%;transform:translate(100px,-130px)}
.insta-theme-road .insta-card-visual img{width:100%;height:240px;object-fit:cover;transition:transform .5s}
.insta-theme-road:hover .insta-card-visual img{transform:scale(1.055)}
.insta-theme-noa .insta-card-visual{background:radial-gradient(circle at 50% 25%,#f7fcff,#d1f0ff 60%,#acdafa 100%)}
.insta-theme-noa .insta-card-visual>img{width:210px;max-height:218px;object-fit:contain;align-self:end;filter:drop-shadow(0 13px 10px #0064bb27)}
.insta-motif{position:absolute;right:16px;top:20px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.22em}
.insta-overlay-tag{position:absolute;left:15px;bottom:17px;z-index:1;background:#fff;color:#0a5ba9;border-radius:5px;font-size:10px;font-weight:850;letter-spacing:.13em;padding:8px 12px}
.insta-noa-star{position:absolute;color:#24a3e8;z-index:0;font-size:36px}.insta-star-one{top:38px;left:45px}.insta-star-two{right:43px;top:70px}
.insta-card-caption{padding:18px 20px 22px;position:relative;display:flex;flex-direction:column;gap:3px}
.insta-card-number{font-size:11px;font-weight:850;color:#3189cf;letter-spacing:.08em}
.insta-card-caption strong{font-size:18px;color:#083263}
.insta-mini-arrow{position:absolute;right:22px;top:28px;color:#0b79d4;font-size:22px}
.instagram-footer{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:20px}
.insta-disclaimer{font-size:11px;color:#7890a6;line-height:1.6}
.instagram-text-link{color:#096dc5;font-weight:850;font-size:13px;white-space:nowrap}
.instagram-text-link:hover{text-decoration:underline}
.service-jump-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:5px 0 30px}
.service-jump-nav a{border:1px solid #d7e7f6;border-radius:12px;padding:14px 12px;background:#f5faff;color:#084c91;text-align:center;font-size:13px;font-weight:850;transition:transform .2s,background .2s}
.service-jump-nav a:hover{background:#e5f3ff;transform:translateY(-3px)}
.service-jump-nav a span{font-size:10px;font-weight:900;color:#268ade;margin-right:5px}
@media(max-width:1024px){.visual-story{padding:68px 0}.visual-story-photos{height:340px}.visual-story-grid{gap:35px}.steps-track{gap:10px}.step-card{padding:20px 10px;min-height:220px}.step-card h3{font-size:15px}.insta-card-visual{min-height:200px}.insta-theme-road .insta-card-visual img{height:200px}.instagram-showcase{gap:12px}}
@media(max-width:680px){.visual-story{padding:54px 0}.visual-story-grid{display:flex;flex-direction:column;gap:33px}.visual-story-photos{width:100%;height:290px}.story-main-photo{inset:0 29% 4% 0}.story-small-photo{top:11%;height:72%}.story-stamp img{width:46px;height:46px}.visual-story-heading{font-size:29px}.visual-story-lead{font-size:14px}.story-highlight{padding:13px 4px}.support-steps{padding:58px 0 55px}.steps-track{grid-template-columns:1fr 1fr;gap:12px}.steps-track:before{display:none}.step-card{min-height:195px;padding:13px 10px}.step-icon{width:70px;height:70px;margin-bottom:10px}.step-icon svg{width:40px;height:40px}.step-card h3{font-size:14px}.step-card p{font-size:11px}.instagram-section{padding:60px 0}.instagram-header{flex-direction:column;align-items:flex-start}.instagram-header .sec-heading{font-size:24px}.instagram-showcase{grid-template-columns:1fr 1fr;gap:12px}.insta-feature:last-child{grid-column:1/-1}.insta-feature:last-child .insta-card-visual{min-height:200px}.insta-card-visual{min-height:152px}.insta-theme-road .insta-card-visual img{height:152px}.insta-theme-noa .insta-card-visual>img{width:160px;max-height:195px}.insta-theme-safety .insta-card-visual>svg{width:94px;height:94px}.insta-card-caption{padding:12px 11px 15px}.insta-card-caption strong{font-size:13px;padding-right:19px}.insta-card-number{font-size:10px}.insta-mini-arrow{right:8px;top:27px;font-size:16px}.insta-motif{font-size:8px}.instagram-footer{flex-direction:column;align-items:flex-start}.service-jump-nav{grid-template-columns:1fr 1fr;gap:8px}.service-jump-nav a{font-size:11px}}
@media(prefers-reduced-motion:reduce){.hero-photo,.hero-noa>img{animation:none}.motion-enabled [data-reveal]{opacity:1;transform:none;transition:none}.service-card:hover,.reason-item:hover,.insta-feature:hover{transform:none}}

/* V4 / refined motion and high-end editorial service experience */
:root{--premium-navy:#071f42;--premium-ink:#0b2b54;--premium-cyan:#1ca8e9}
.reading-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,#105bb9,#51c8ff);transform:scaleX(0);transform-origin:0 50%;z-index:9999;pointer-events:none;box-shadow:0 1px 8px #0288cc35}
.site-nav a{position:relative}.site-nav a::after{content:"";position:absolute;left:50%;right:50%;height:2px;bottom:-12px;background:var(--blue);transition:left .3s ease,right .3s ease}.site-nav a:hover::after,.site-nav a.active::after{left:0;right:0}
.header-cta,.btn-primary,.premium-large-btn{position:relative;overflow:hidden;isolation:isolate;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease}
.header-cta::before,.btn-primary::before,.premium-large-btn::before{content:"";position:absolute;inset:-110% auto -110% -60%;width:35%;transform:rotate(20deg) translateX(0);background:linear-gradient(90deg,transparent,#ffffff60,transparent);transition:transform .65s ease;z-index:-1}
.header-cta:hover,.btn-primary:hover,.premium-large-btn:hover{transform:translateY(-2px);box-shadow:0 9px 24px #0752b23d}
.header-cta:hover::before,.btn-primary:hover::before,.premium-large-btn:hover::before{transform:rotate(20deg) translateX(570%)}
.hero::before{background:linear-gradient(90deg,rgba(255,255,255,.99),rgba(255,255,255,.93) 26%,rgba(255,255,255,.58) 47%,transparent 67%)}
.hero h1 em{background:none;color:#0b6ed3;-webkit-text-fill-color:#0b6ed3;text-shadow:0 2px 11px #077cc51a}
@keyframes premiumGradient{from{background-position:0% 50%}to{background-position:100% 50%}}
.metric-card{position:relative;isolation:isolate;overflow:hidden}
.metric-card::after{content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(90deg,transparent,#a8d7ff1f,transparent);transform:skew(-19deg);pointer-events:none;animation:metricShine 12s ease-in-out infinite}
@keyframes metricShine{0%,55%,100%{left:-120%}68%{left:150%}}
.metric-value [data-count-to]{font-variant-numeric:tabular-nums}
.service-card img,.insta-card-visual img,.premium-media img{transition:transform .75s cubic-bezier(.2,.8,.2,1)}
.service-card:hover img,.insta-feature:hover .insta-card-visual img,.premium-service:hover .premium-media img{transform:scale(1.055)}
.story-main-photo img,.story-small-photo img{transition:transform .8s ease}.visual-story-photos:hover .story-main-photo img{transform:scale(1.06)}
.reasons .reason-item{border:1px solid transparent;transition:border-color .25s,transform .3s,box-shadow .3s}
.reasons .reason-item:hover{border-color:#a4d7fe;transform:translateY(-5px);box-shadow:0 15px 30px #125dac19}
.step-card{transition:transform .35s,box-shadow .35s}.step-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px #1765ac20}
[data-reveal="slide-left"]{--reveal-x:-28px}[data-reveal="slide-right"]{--reveal-x:28px}
.motion-enabled [data-reveal="slide-left"],.motion-enabled [data-reveal="slide-right"]{transform:translate3d(var(--reveal-x),18px,0)}
.motion-enabled [data-reveal="slide-left"].is-visible,.motion-enabled [data-reveal="slide-right"].is-visible{transform:translate3d(0,0,0)}
/* Services: three expansive cinematic photo-and-copy rows, not product promotion. */
.premium-services-page{overflow:hidden;background:#fff}
.premium-hero{position:relative;min-height:585px;display:flex;align-items:center;overflow:hidden;background:linear-gradient(117deg,#f5faff 10%,#ecf7ff 52%,#e6f3ff)}
.premium-hero-backdrop{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 23% 24%,#d2ecff91,transparent 38%),radial-gradient(ellipse at 95% 84%,#8cd4ff47,transparent 50%)}
.premium-hero-grid{display:grid;grid-template-columns:48% 52%;align-items:center;min-height:585px;position:relative;gap:18px}
.premium-hero-copy{position:relative;z-index:2;padding:48px 0 64px}
.premium-hero .breadcrumb{font-size:12px;color:#547999;letter-spacing:.04em;margin-bottom:61px}
.premium-eyebrow,.ps-kicker,.premium-section-meta{font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',sans-serif;font-size:11px;font-weight:800;letter-spacing:.19em;color:#0d74c7}
.premium-eyebrow .line{display:inline-block;width:35px;height:1px;background:#359de1;vertical-align:middle;margin:0 5px}
.premium-hero h1{font-size:clamp(38px,4.2vw,61px);letter-spacing:-.045em;line-height:1.3;font-weight:900;margin:18px 0 28px}
.premium-hero h1 em,.premium-intro-row em{font-style:normal;color:#0b74d4}
.premium-hero-copy>p{font-size:16px;font-weight:600;color:#55708b;line-height:1.98;margin:0 0 29px}
.premium-hero-image{position:relative;align-self:center;height:450px;border-radius:165px 24px 24px 24px;overflow:visible;box-shadow:0 24px 70px #0c4a7f25;isolation:isolate}
.premium-hero-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:165px 24px 24px 24px}
.premium-hero-image::before{content:"";position:absolute;inset:20px -25px -20px 25px;border:1px solid #84c4f69f;border-radius:165px 24px 24px 24px;z-index:-1}
.premium-floating-label{position:absolute;left:-52px;bottom:35px;border:1px solid #ffffffae;background:#ffffffd9;backdrop-filter:blur(18px);padding:17px 23px;border-radius:17px;box-shadow:0 12px 44px #155eac23;color:#064c9a;font-size:11px;font-weight:900;letter-spacing:.11em;animation:premiumFloating 6s ease-in-out infinite}
.premium-floating-label>span:last-child{display:block;color:#17365d;font-size:12px;font-weight:700;letter-spacing:0;margin-top:4px}
.soft-dot{width:7px;height:7px;display:inline-block;vertical-align:middle;border-radius:50%;background:#22abd8;box-shadow:0 0 0 4px #21baff16;margin-right:8px;animation:premiumDot 3s ease-in-out infinite}
@keyframes premiumDot{50%{box-shadow:0 0 0 10px #21baff04}}
@keyframes premiumFloating{50%{transform:translateY(-9px)}}
.premium-photo-note{position:absolute;right:10px;bottom:-30px;font-size:10px;color:#7b8da1}
.premium-services-intro{padding:85px 0 74px;background:#fff}
.premium-section-meta{display:flex;justify-content:space-between;padding-bottom:17px;border-bottom:1px solid #d7e6f3}
.premium-intro-row{display:grid;grid-template-columns:1.25fr .75fr;gap:50px;margin-top:33px;align-items:center}
.premium-intro-row h2{font-size:clamp(27px,3.2vw,43px);line-height:1.5;letter-spacing:-.045em;margin:0;font-weight:900}
.premium-intro-row p{font-size:15px;color:#637d95;line-height:2.1;margin:0;border-left:2px solid #2b9ae9;padding-left:26px}
.premium-service-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:49px 0 0}
.premium-service-nav a{display:flex;align-items:center;gap:17px;background:linear-gradient(125deg,#f6fbff,#edf7ff);border:1px solid #dcecfb;border-radius:12px;padding:23px 21px;font-size:15px;font-weight:800;box-shadow:0 10px 35px #1556930a;transition:background .3s,transform .3s,box-shadow .3s,border .3s}
.premium-service-nav a span{font-size:11px;color:#1b89d7;letter-spacing:.06em}
.premium-service-nav a b{margin-left:auto;font-size:20px;font-weight:400;color:#2c8dd5}
.premium-service-nav a:hover,.premium-service-nav a.is-active{background:#e5f5ff;border-color:#75b9f0;transform:translateY(-4px);box-shadow:0 14px 38px #125b9a1c}
.premium-service-features{padding:2px 0 98px;position:relative;background:linear-gradient(180deg,#fff 0,#f6fbff 80%,#fff 100%)}
.premium-service{scroll-margin-top:100px;display:grid;grid-template-columns:50% 50%;align-items:center;gap:0;min-height:520px;margin:45px 0 100px;background:transparent}
.premium-media{height:510px;position:relative;border-radius:18px;overflow:hidden;box-shadow:0 20px 60px #063b7720}
.premium-media img{width:100%;height:100%;object-fit:cover}
.media-outline{position:absolute;inset:16px;border:1px solid #ffffff70;border-radius:9px;pointer-events:none}
.media-corner{position:absolute;left:38px;bottom:36px;font-size:10px;color:#fff;letter-spacing:.18em;font-weight:800;text-shadow:0 2px 5px #0007}
.premium-description{position:relative;margin-left:-40px;background:#fff;border:1px solid #e0edfa;padding:48px clamp(30px,4.4vw,67px);border-radius:18px;box-shadow:0 25px 70px #0a3e731c;z-index:1;min-height:435px}
.premium-service:nth-child(even) .premium-media{order:2}
.premium-service:nth-child(even) .premium-description{order:1;margin-left:0;margin-right:-40px}
.premium-service:nth-child(even) .media-corner{left:auto;right:36px}
.ps-kicker{display:flex;gap:10px;align-items:center;margin-bottom:19px}
.ps-kicker i{height:1px;background:#6cc1f7;width:38px;display:inline-block}
.ps-icon{position:absolute;right:32px;top:36px;color:#2187d4;opacity:.35}
.ps-icon svg{height:45px;width:45px}
.premium-description h2{font-size:clamp(28px,3vw,40px);letter-spacing:-.045em;margin:0 0 14px;color:#092b54}
.premium-description .ps-lead{color:#173e64;font-size:16px;font-weight:800;line-height:1.9;margin:0 0 14px}
.premium-description .ps-detail{color:#58758e;font-size:13px;line-height:2;margin:0 0 24px}
.ps-list-label{font-size:11px;color:#5684a8;letter-spacing:.1em;font-weight:800}
.premium-topic-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px;margin:13px 0 24px;padding:0;list-style:none}
.premium-topic-list li{font-size:13px;font-weight:750;display:flex;gap:9px;align-items:center}
.topic-check{display:inline-grid;place-items:center;flex:0 0 22px;height:22px;color:#1673c5;background:#eaf5ff;border:1px solid #d1e9fd;border-radius:50%;font-size:11px}
.premium-cta{display:inline-flex;align-items:center;gap:34px;font-size:13px;color:#0a66bf;font-weight:850;border-bottom:1px solid #2189e3;padding:8px 0;transition:gap .3s,color .3s}
.premium-cta:hover{gap:43px}
.premium-service .premium-media,.premium-service .premium-description{transition:transform .75s cubic-bezier(.2,.75,.2,1)}
.premium-service:hover .premium-media{transform:translateY(-5px)}
.service-compliance-note{max-width:930px;margin:0 auto;text-align:center;color:#667e96;font-size:12px;line-height:1.9;border-top:1px solid #dbe8f4;padding-top:28px}
.premium-how-we-work{padding:95px 0 108px;background:linear-gradient(145deg,#081f42,#092f62);color:#fff;position:relative;overflow:hidden}
.premium-how-we-work:before{content:"";position:absolute;width:530px;height:530px;left:-180px;top:-150px;border-radius:50%;border:1px solid #3d9eea27;box-shadow:0 0 0 65px #66b9ef08,0 0 0 135px #66b9ef05}
.premium-how-heading{text-align:center;position:relative}
.premium-how-heading h2{font-size:clamp(29px,3.4vw,45px);margin:10px 0 13px;letter-spacing:-.045em;color:white}
.premium-how-heading p{color:#b0c5e1;font-size:13px;line-height:1.9;margin:0}
.premium-how-heading .premium-eyebrow{color:#74c9ff}
.legacy-accordion{max-width:900px;margin:47px auto 0;position:relative}
.legacy-detail{background:#ffffff0c;border:1px solid #89bbef3a;margin-bottom:12px;border-radius:13px;transition:background .35s,border-color .35s;overflow:hidden}
.legacy-detail[open]{background:#ffffff17;border-color:#7dbaf976}
.legacy-detail summary{padding:23px 27px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-weight:850;font-size:17px;outline-offset:-4px}
.legacy-detail summary::-webkit-details-marker{display:none}
.legacy-open{font-size:23px;font-weight:300;color:#84cbff;transition:transform .4s}
.legacy-detail[open] .legacy-open{transform:rotate(45deg)}
.legacy-detail-body{padding:0 27px 24px;color:#c5d5ea;font-size:14px;line-height:2}
.legacy-detail-body p{margin:0}
.premium-bottom-cta{padding:64px 0;background:linear-gradient(112deg,#ecf8ff,#fff)}
.premium-bottom-layout{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:27px}
.premium-bottom-emblem{display:grid;place-items:center;background:#dff0ff;width:64px;height:64px;border-radius:50%;color:#0568c5}
.premium-bottom-emblem svg{width:33px;height:33px}
.premium-bottom-layout h2{margin:7px 0;font-size:clamp(24px,2.6vw,33px)}
.premium-bottom-layout p{margin:0;font-size:14px;color:#5e7b96}
.premium-large-btn{background:linear-gradient(130deg,#087add,#0755ae);color:white;padding:19px 27px;border-radius:12px;font-size:14px;font-weight:850;display:inline-flex;gap:28px;align-items:center}
.premium-large-btn:hover{color:white}
.premium-services-page .premium-hero-image>img{animation:premiumImageEnter 1.3s ease both}
@keyframes premiumImageEnter{from{opacity:.1;transform:scale(1.045) translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.premium-hero-grid{grid-template-columns:50% 50%}.premium-hero-image{height:380px}.premium-floating-label{left:-16px}.premium-hero .breadcrumb{margin-bottom:38px}.premium-description{padding:37px}.premium-media{height:460px}}
@media(max-width:700px){
 .site-nav a::after{display:none}
 .hero::before{background:linear-gradient(180deg,#fff 0%,#fff 22%,#fffffff0 41%,#ffffff00 69%)}
 .premium-hero{min-height:auto}.premium-hero-grid{grid-template-columns:1fr;gap:0;padding-bottom:72px}.premium-hero-copy{padding:28px 0 21px}.premium-hero .breadcrumb{margin-bottom:28px}.premium-hero h1{font-size:clamp(32px,8vw,42px);margin:12px 0 18px}.premium-hero-copy>p{font-size:13px;margin-bottom:15px}.premium-hero-image{height:260px;max-width:100%;margin:17px 0 0;border-radius:80px 14px 14px 14px}.premium-hero-image>img{border-radius:80px 14px 14px 14px}.premium-hero-image::before{inset:9px -7px -9px 9px;border-radius:80px 14px 14px 14px}.premium-floating-label{bottom:19px;left:10px;padding:10px 12px;font-size:9px;animation:none}.premium-floating-label>span:last-child{font-size:10px}.premium-photo-note{bottom:-26px;right:5px}
 .premium-services-intro{padding:54px 0 38px}.premium-intro-row{grid-template-columns:1fr;gap:17px;margin-top:19px}.premium-intro-row h2{font-size:25px}.premium-intro-row p{border:0;padding:0;font-size:13px}.premium-service-nav{grid-template-columns:1fr;gap:9px;margin-top:30px}.premium-service-nav a{padding:16px 19px}
 .premium-service-features{padding-bottom:56px}.premium-service{display:flex;flex-direction:column;min-height:0;margin:17px 0 62px;scroll-margin-top:70px}.premium-media,.premium-service:nth-child(even) .premium-media{order:1;height:275px;width:100%}.premium-description,.premium-service:nth-child(even) .premium-description{order:2;width:calc(100% - 18px);margin:-25px 0 0!important;min-height:0;padding:30px 22px}.premium-description h2{font-size:27px}.premium-description .ps-lead{font-size:14px}.premium-description .ps-detail{font-size:12px}.premium-topic-list li{font-size:12px}.premium-topic-list{gap:9px}.ps-icon{top:22px;right:20px}.ps-icon svg{width:34px;height:34px}
 .premium-how-we-work{padding:63px 0}.legacy-accordion{margin-top:29px}.legacy-detail summary{padding:17px;font-size:14px}.legacy-detail-body{padding:0 18px 20px;font-size:12px}
 .premium-bottom-cta{padding:42px 0}.premium-bottom-layout{grid-template-columns:44px 1fr;gap:12px}.premium-bottom-emblem{width:44px;height:44px}.premium-bottom-emblem svg{width:27px;height:27px}.premium-bottom-layout h2{font-size:21px}.premium-bottom-layout p{font-size:12px}.premium-bottom-layout .premium-large-btn{grid-column:1/-1;justify-content:center;margin-top:10px}
}
@media (prefers-reduced-motion: reduce){
 .reading-progress,.metric-card::after{display:none}
 .hero h1 em,.premium-floating-label,.soft-dot,.premium-services-page .premium-hero-image>img{animation:none!important}
 .service-card img,.premium-media img{transition:none!important}
 .header-cta:hover,.btn-primary:hover,.premium-large-btn:hover,.step-card:hover,.premium-service-nav a:hover{transform:none!important}
 .motion-enabled [data-reveal="slide-left"],.motion-enabled [data-reveal="slide-right"]{transform:none!important;opacity:1!important}
}

/* Mobile hero mascot: readable label and comment, no overflow or overlap */
@media (max-width: 640px) {
  .hero-noa {
    position: absolute; left: 12px; right: 12px; bottom: 17px;
    display: flex; flex-direction: row; align-items: end; justify-content: flex-start;
    gap: 8px; width: auto; max-width: calc(100% - 24px); z-index: 4;
    pointer-events: none;
  }
  .hero-noa > img {
    flex: 0 0 88px; width: 88px; height: 107px; object-fit: contain;
  }
  .hero-noa .noa-talk {
    min-width: 0; max-width: 220px; width: auto; margin: 0 0 13px;
    padding: 11px 13px; background: rgba(255,255,255,.96);
    border: 1px solid rgba(15,102,194,.2); border-radius: 12px;
    box-shadow: 0 4px 22px rgba(5,51,104,.16);
    transform: none; text-shadow: none; text-align: left;
    font-size: 12px; font-weight: 800; line-height: 1.6;
    letter-spacing: 0; overflow-wrap: anywhere;
  }
  .hero-noa .noa-talk small {
    display: block; margin: 6px 0 0; font-size: 10px; font-weight: 700;
    line-height: 1.45; color: #315c88; transform: none;
  }
  .hero-noa .noa-talk::before {
    content: ''; position: absolute; left: -6px; bottom: 20px; width: 10px; height: 10px;
    transform: rotate(45deg); background: rgba(255,255,255,.96);
    border-left: 1px solid rgba(15,102,194,.2);
    border-bottom: 1px solid rgba(15,102,194,.2);
  }
  .hero-image-note {bottom: 2px; left: auto; right: 9px; z-index: 4;}
}
@media (max-width: 360px) {
  .hero-noa {left: 8px; right: 8px; bottom: 18px; gap: 5px; max-width: calc(100% - 16px);}
  .hero-noa > img {flex-basis: 74px; width: 74px; height: 100px;}
  .hero-noa .noa-talk {font-size: 11px; padding: 9px 10px;}
  .hero-noa .noa-talk small {font-size: 9px;}
}
/* QA 2026-10-12: keep footer within narrow 320px devices */
@media (max-width: 360px) {
 .footer-row {min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:10px}
 .footer-row > *, .footer-main, .footer-nav {min-width:0;max-width:100%}
 .footer-nav {gap:7px 9px}
 .footer-nav a {overflow-wrap:anywhere}
 .footer-brand .wordmark {max-width:145px}
 .footer-fine {white-space:normal}
 .hero {overflow:hidden}
}

/* Approved scope: FAQ and blog entry sections only. */
.faq-section,.news-picks{padding:64px 0}.faq-section{background:#f4f9fe}.faq-list{margin:25px 0;max-width:850px}.faq-list details{border-bottom:1px solid #c9dfef;background:#fff;margin:8px 0;border-radius:10px}.faq-list summary{padding:21px;cursor:pointer;font-weight:800;line-height:1.7}.faq-list p{padding:0 22px 22px;margin:0;line-height:1.9;font-size:15px}.news-links{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:26px 0}.news-links a{display:flex;align-items:center;gap:24px;padding:24px;border:1px solid #dceaf5;border-radius:16px}.news-links img{width:90px;height:110px;object-fit:contain}.news-links h3{font-size:20px}.news-links small{color:#526b82}.news-links span{font-weight:800;color:#0757aa}
@media(max-width:700px){.faq-section,.news-picks{padding:40px 0}.news-links{grid-template-columns:1fr;gap:14px}.news-links a{gap:15px;padding:18px}.news-links img{width:65px;height:85px}.news-links h3{font-size:17px}.news-links small{font-size:11px}.faq-list summary{font-size:14px;padding:17px}.faq-list p{font-size:14px;padding:0 17px 17px}}
