@charset "UTF-8";
:root{--ink:#212b31;--muted:#53656b;--cyan:#02bdcc;--purple:#9b77c5;--paper:#f5f5f0;--line:#d8e0df;--ease:cubic-bezier(.2,.8,.2,1)}
html{font-size:16px;scroll-behavior:smooth;scroll-padding-top:110px}body.cv-root{margin:0;color:var(--ink);background:white;font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:clip}.cv-root *{box-sizing:border-box}.cv-root h1,.cv-root h2,.cv-root h3,.cv-root p{margin:0}.cv-root a{color:inherit;text-decoration:none}.cv-root img{max-width:100%;height:auto;display:block}.cv-root button{font-family:inherit;cursor:pointer}.cv-root :focus-visible{outline:3px solid #6e45a2;outline-offset:5px}.cv-root ::selection{color:var(--ink);background:#a9ece7}.cv-container{width:min(1200px,calc(100% - 100px));margin-inline:auto}.cv-section{padding-block:120px}.cv-skip{position:fixed;top:-100px;left:20px;background:white;padding:16px;z-index:100}.cv-skip:focus{top:12px}.cv-header{position:absolute;top:0;left:0;right:0;z-index:50;height:108px;padding:0 40px;display:flex;align-items:center;justify-content:space-between}.admin-bar .cv-header{top:32px}.cv-logo{width:190px;display:block;flex-shrink:0}.cv-navigation{display:flex;align-items:center;gap:29px;padding:10px 10px 10px 26px;background:#ffffffea;border-radius:100px;box-shadow:0 2px 0 #21343805}.cv-navigation>a{font-size:12px;font-weight:600;display:flex;flex-direction:column;gap:3px;transition:color .2s}.cv-navigation small{font-size:10px;font-weight:500}.cv-navigation>a:hover{color:#008d9b}.cv-navigation .cv-nav-contact{flex-direction:row;align-items:center;gap:25px;padding:15px 22px;border-radius:30px;background:var(--ink);color:#fff;font-size:11px}.cv-nav-contact span{font-size:21px;font-weight:400}.cv-menu-toggle{display:none}.cv-hero{background:var(--paper);overflow:hidden;border-radius:0 0 60px 60px}.cv-hero-stage{position:relative;padding:160px 60px 68px;min-height:710px;max-width:1600px;margin:auto}.cv-hero-copy{position:relative;z-index:2;width:58%;pointer-events:none}.cv-hero-copy>a{pointer-events:auto}.cv-eyebrow{font-size:11px;letter-spacing:.1em;display:flex;gap:10px;align-items:center;font-weight:600;margin-bottom:24px!important}.cv-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--cyan);flex-shrink:0}.cv-hero h1{font-size:clamp(48px,5.7vw,86px);font-weight:800;line-height:1.25;letter-spacing:-.055em}.cv-hero h1 em{font-family:Arial,sans-serif;letter-spacing:-.065em;font-size:1.08em;font-style:normal;color:#009cae}.cv-hero-intro{font-size:13px;line-height:2;max-width:370px;margin:26px 0!important;letter-spacing:.015em}.cv-button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-width:230px;min-height:58px;padding:10px 12px 10px 25px;background:var(--ink);border:1px solid var(--ink);border-radius:100px;color:white!important;font-size:12px;font-weight:600;transition:background .3s,transform .3s}.cv-button>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fff;color:var(--ink);font-size:22px;font-weight:400;transition:transform .3s}.cv-button:hover{background:#365a65;transform:translateY(-3px)}.cv-button:hover>span{transform:rotate(45deg)}.cv-button-outline{background:transparent;color:var(--ink)!important}.cv-button-outline>span{background:var(--ink);color:white}.cv-button-outline:hover{background:#d8eeec}.cv-hero-art{position:absolute;right:-10px;top:52px;width:60%;max-width:830px;aspect-ratio:760/720;transform:translate(var(--art-x,0px),var(--art-y,0px));transition:transform 1.5s var(--ease);pointer-events:none}.cv-hero-art>img{width:100%;height:100%;animation:cv-float 11s ease-in-out infinite alternate;transform-origin:70% 35%;will-change:transform}.cv-orbit-word{position:absolute;top:42%;right:7%;font-size:12px;letter-spacing:.13em;line-height:1.7;font-weight:600}.cv-hero-side{position:absolute;right:18px;top:380px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.2em}.cv-scroll{position:absolute;bottom:30px;right:44px;display:flex;align-items:center;gap:17px;font-size:9px;letter-spacing:.12em;font-weight:600;z-index:3}.cv-scroll span{display:grid;place-items:center;width:44px;height:44px;border:1px solid #8d9c9b;border-radius:50%;font-size:22px}.cv-project-ribbon{position:relative;z-index:3;overflow:hidden;padding:15px 0}.cv-ribbon-track{display:flex;width:max-content;animation:cv-marquee 60s linear infinite}.cv-ribbon-group{display:flex;gap:22px;padding-right:22px}.cv-ribbon-card{display:block;position:relative;width:350px;flex-shrink:0;overflow:hidden;border-radius:22px;background:#e3e6e4;aspect-ratio:1.5}.cv-ribbon-card:nth-child(2n){border-radius:70px 22px 22px 22px}.cv-ribbon-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.cv-ribbon-card span{position:absolute;bottom:0;left:0;right:0;padding:22px 18px 15px;background:linear-gradient(transparent,#152635dd);color:white;font-size:10px;display:flex;gap:10px;justify-content:space-between;align-items:center}.cv-ribbon-card b{font-size:20px;font-weight:400}.cv-ribbon-card:hover img{transform:scale(1.05)}.cv-project-ribbon:hover .cv-ribbon-track,.cv-project-ribbon:focus-within .cv-ribbon-track{animation-play-state:paused}.cv-ribbon-caption{display:flex;align-items:center;justify-content:space-between;padding:15px 45px 32px;font-size:8px;letter-spacing:.13em}.cv-motion-toggle{border:0;background:none;color:var(--ink);display:flex;gap:10px;align-items:center;font-size:10px;padding:10px}.cv-motion-symbol{font-size:15px;letter-spacing:0}.cv-news-flash{padding:28px 0;border-bottom:1px solid var(--line);display:flex;gap:35px;align-items:center}.cv-micro{font-size:10px;letter-spacing:.06em;font-weight:600;display:flex;gap:10px;align-items:center;white-space:nowrap}.cv-micro .cv-dot{width:5px;height:5px}.cv-news-flash>a{flex:1;display:flex;gap:26px;align-items:center;font-size:12px}.cv-news-flash time{font-size:11px;color:var(--muted)}.cv-news-flash b{margin-left:auto;font-size:22px;font-weight:400}.cv-section-label{display:flex;gap:10px;align-items:center;font-size:11px;letter-spacing:.09em;font-weight:600;margin-bottom:29px!important}.cv-section-label small{font-size:11px;letter-spacing:.02em;margin-left:15px;font-weight:500}.cv-root h2{font-size:clamp(32px,4.5vw,60px);line-height:1.45;letter-spacing:-.055em;font-weight:700}.cv-concept{position:relative;overflow:hidden;padding-bottom:65px}.cv-concept-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center;margin-top:50px}.cv-concept-photo{position:relative;padding-bottom:25px;max-width:440px}.cv-concept-photo img{width:100%;aspect-ratio:.95;object-fit:cover;border-radius:160px 160px 24px 24px;object-position:52% 50%}.cv-photo-label{position:absolute;bottom:0;right:-34px;font-size:clamp(23px,3.2vw,40px);letter-spacing:-.06em;font-weight:600;line-height:1.1;max-width:290px;background:white;padding:18px 0 0 20px;border-radius:20px 0 0 0}.cv-concept-copy{position:relative;z-index:2}.cv-concept h2{font-size:clamp(26px,2.8vw,39px);line-height:1.8;margin-bottom:26px}.cv-text-underline{background:linear-gradient(transparent 75%,#b6eae5 75%)}.cv-concept-copy p{font-size:14px;line-height:2.2;margin-bottom:18px;max-width:510px}.cv-concept-copy .cv-button{margin-top:20px}.cv-purpose-word{font-size:clamp(48px,7.6vw,110px);letter-spacing:-.065em;font-weight:500;margin-top:65px;white-space:nowrap;line-height:1.1}.cv-purpose-word span{color:#a0c4c5}.cv-concept-decoration{position:absolute;pointer-events:none}.cv-decoration-a{width:150px;height:150px;border:43px solid #d7c6eb;border-radius:50%;left:-75px;top:20px}.cv-decoration-b{width:80px;height:80px;border-radius:0 0 100% 0;background:#b7ebe5;right:0;bottom:25%}.cv-section-head{display:flex;justify-content:space-between;gap:55px;align-items:flex-end;margin-bottom:50px}.cv-section-head>div:last-child>p{font-size:14px;line-height:2.1;max-width:370px}.cv-text-link{display:inline-flex;justify-content:space-between;align-items:center;gap:45px;font-size:12px;font-weight:600;border-bottom:1px solid #859c9e;padding-bottom:12px;margin-top:25px}.cv-text-link span{font-size:24px;font-weight:400;transition:transform .3s}.cv-text-link:hover span{transform:translate(4px,-4px)}.cv-services{background:#f3f5f3;border-radius:60px;position:relative}.cv-service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px}.cv-service-card{position:relative;display:flex;flex-direction:column;border-radius:24px;padding:27px 30px 35px;overflow:hidden;min-height:390px;grid-column:span 3;background:white;transition:transform .4s var(--ease),box-shadow .4s}.cv-service-card:hover{transform:translateY(-9px);box-shadow:0 20px 28px #183d3d0c}.cv-service-1,.cv-service-2{grid-column:span 3;min-height:410px}.cv-service-1{background:#bcf0e9}.cv-service-2{background:#ded0ef}.cv-service-top{display:flex;gap:16px;align-items:center;font-size:8px;letter-spacing:.08em;font-weight:600}.cv-service-number{font-size:13px}.cv-illustration{display:block;width:100%;height:180px;color:#26464d;margin:0 auto 12px}.cv-service-1 .cv-illustration,.cv-service-2 .cv-illustration{height:210px;margin-top:0}.cv-service-card h3{font-size:19px;line-height:1.5;letter-spacing:-.04em;font-weight:700;margin-bottom:15px}.cv-service-1 h3,.cv-service-2 h3{font-size:25px}.cv-service-card p{font-size:12px;line-height:2;max-width:400px;padding-right:15px;color:#3f575e}.cv-service-card .cv-circle-arrow{position:absolute;bottom:27px;right:25px}.cv-service-copy{padding-bottom:40px}.cv-service-1 .cv-service-copy,.cv-service-2 .cv-service-copy{padding-bottom:20px;max-width:85%}.cv-circle-arrow{display:grid;place-items:center;width:42px;height:42px;border:1px solid #8fa4a6;border-radius:50%;font-size:22px;font-weight:400;transition:background .3s,color .3s}.cv-service-card:hover .cv-circle-arrow{background:var(--ink);color:#fff;border-color:var(--ink)}.cv-works{overflow:hidden}.cv-work-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.cv-work-count{font-size:11px;letter-spacing:.1em;color:#6c7d81}.cv-work-count b{font-weight:500;color:var(--ink)}.cv-work-controls>div{display:flex;gap:12px}.cv-work-controls button{width:46px;height:46px;border:1px solid #8fa3a4;border-radius:50%;font-size:23px;color:var(--ink);background:white;transition:background .2s,color .2s}.cv-work-controls button:disabled{opacity:.35;cursor:default}.cv-work-controls button:hover:not(:disabled){background:var(--ink);color:white}.cv-work-track{display:flex;gap:32px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:max(50px,calc((100vw - 1200px)/2));padding:0 max(50px,calc((100vw - 1200px)/2)) 20px;scrollbar-width:thin;scrollbar-color:#9fbfbe transparent;overscroll-behavior-x:contain}.cv-work-card{flex:0 0 min(610px,65vw);min-width:0;scroll-snap-align:start}.cv-work-image{position:relative;overflow:hidden;background:#edf0ee;border-radius:24px}.cv-work-image img{width:100%;aspect-ratio:1.3989;object-fit:cover;transition:transform .7s var(--ease)}.cv-work-card a:hover img{transform:scale(1.04)}.cv-work-open{position:absolute;right:20px;bottom:20px;border-radius:40px;padding:13px 18px;background:white;font-size:9px;letter-spacing:.05em}.cv-work-meta{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin:20px 0 12px;color:#607479}.cv-work-card h3{font-size:18px;line-height:1.6;font-weight:600;letter-spacing:-.03em}.cv-work-note{margin-inline:auto!important;font-size:11px;line-height:2;color:#65777d;margin-top:26px!important}.cv-company{position:relative;overflow:hidden;background:#9ddcd7;padding:100px 0 0;border-radius:60px;isolation:isolate}.cv-company-inner{display:grid;grid-template-columns:1fr 1fr;gap:110px;position:relative;z-index:2}.cv-company .cv-section-label{margin-bottom:35px!important}.cv-company h2{font-size:clamp(50px,6.2vw,83px);line-height:1.4}.cv-company-copy{padding-top:35px}.cv-company-copy p{font-size:14px;line-height:2.3;margin-bottom:22px}.cv-company-copy p:first-child{font-size:16px;font-weight:600}.cv-company .cv-button{margin-top:15px}.cv-company-word{font-size:clamp(70px,15.3vw,230px);line-height:1;letter-spacing:-.07em;white-space:nowrap;margin:65px 0 -30px -10px;color:#236f7044;font-weight:600;position:relative;z-index:1}.cv-company-loop{width:600px;height:600px;border:135px solid #c4e9e4;border-radius:50%;position:absolute;top:-330px;right:-160px;z-index:0}.cv-journal-list{border-top:1px solid var(--line)}.cv-journal-list article a{padding:30px 0;display:flex;gap:35px;align-items:center;border-bottom:1px solid var(--line);transition:padding .3s}.cv-journal-list article a:hover{padding-left:12px}.cv-journal-list time{font-size:12px;color:#63787e;flex-shrink:0}.cv-journal-list h3{font-size:14px;line-height:1.8;font-weight:500}.cv-journal-list .cv-circle-arrow{margin-left:auto;flex-shrink:0}.cv-faq{padding:15px 0 120px;display:grid;grid-template-columns:1fr 1.35fr;gap:90px}.cv-faq h2{font-size:34px;line-height:1.6}.cv-question-mark{font-size:170px;line-height:1.2;color:#cab7e0;display:inline-block;transform:rotate(-17deg);font-weight:600;margin-left:65px}.cv-faq details{border-bottom:1px solid var(--line)}.cv-faq details:first-child{border-top:1px solid var(--line)}.cv-faq summary{display:flex;align-items:center;gap:14px;list-style:none;padding:27px 0;cursor:pointer;font-size:13px;line-height:1.9;font-weight:600}.cv-faq summary::-webkit-details-marker{display:none}.cv-q{font-size:18px;color:#00838d}.cv-plus{width:14px;height:14px;flex-shrink:0;margin-left:auto;position:relative}.cv-plus:before,.cv-plus:after{content:"";position:absolute;left:0;top:7px;height:1px;width:14px;background:var(--ink)}.cv-plus:after{transform:rotate(90deg);transition:transform .2s}.cv-faq details[open] .cv-plus:after{transform:rotate(0)}.cv-faq details p{font-size:13px;line-height:2.1;margin:0 25px 28px 34px;color:#4f666d}.cv-contact{position:relative;overflow:hidden;background:#dfd3ee;padding:80px 0 65px;border-radius:60px 60px 0 0}.cv-contact .cv-container{position:relative;z-index:2}.cv-contact-link{display:flex;align-items:center;justify-content:space-between;gap:25px}.cv-contact-en{font-size:clamp(55px,7.2vw,110px);font-family:Arial,sans-serif;letter-spacing:-.065em;line-height:1.04;font-weight:500;margin-bottom:30px!important}.cv-contact-en span{font-size:.81em}.cv-contact-link h2{font-size:28px;line-height:1.7}.cv-contact-arrow{display:grid;place-items:center;flex-shrink:0;width:190px;height:190px;border-radius:50%;background:var(--ink);color:white;font-size:110px;font-weight:300;transition:transform .5s var(--ease)}.cv-contact-link:hover .cv-contact-arrow{transform:rotate(45deg)}.cv-contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:40px;border-top:1px solid #9784b255;padding-top:28px}.cv-contact-bottom p{font-size:12px;line-height:2}.cv-contact-orbit{position:absolute;right:-190px;top:170px;width:560px;height:560px;border:125px solid #c2e5e0;border-radius:50%;z-index:0}.cv-footer{padding:65px 0 25px;background:#f5f5f0}.cv-footer-top{display:flex;justify-content:space-between;gap:50px}.cv-footer-top img{width:190px}.cv-footer p{font-size:11px;line-height:2.1;margin:28px 0 9px}.cv-footer small{font-size:10px;line-height:1.8;color:#617278}.cv-footer nav{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:25px 60px;font-size:12px;padding-top:10px}.cv-footer-bottom{display:flex;gap:30px;align-items:center;border-top:1px solid var(--line);margin-top:45px;padding-top:25px;font-size:10px;color:#617278}.cv-footer-bottom>a:last-child{margin-left:auto;font-size:9px;letter-spacing:.06em}.cv-motion-ready [data-reveal]{opacity:0;transform:translateY(32px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.cv-motion-ready [data-reveal].is-visible,.cv-motion-ready [data-reveal]:focus-within{opacity:1;transform:translateY(0)}.cv-motion-paused *{animation-play-state:paused!important}.cv-motion-paused [data-reveal]{opacity:1;transform:none}.cv-motion-paused .cv-hero-art{transform:none!important;transition:none}.cv-motion-paused .cv-work-track{scroll-behavior:auto}
@keyframes cv-float{from{transform:translate(0,0) rotate(-3deg)}to{transform:translate(9px,18px) rotate(5deg)}}
@keyframes cv-marquee{to{transform:translateX(-50%)}}
@media(min-width:1500px){.cv-hero-stage{padding-top:180px;min-height:820px;padding-left:100px}.cv-hero-art{top:75px;right:0}.cv-hero-intro{font-size:15px}.cv-ribbon-card{width:410px}}
@media(max-width:1100px){.cv-header{padding-inline:30px}.cv-navigation{gap:22px;padding-left:22px}.cv-logo{width:160px}.cv-navigation>a{font-size:11px}.cv-container{width:calc(100% - 72px)}.cv-hero-stage{padding-left:40px;min-height:660px}.cv-hero-art{top:100px;right:-20px;width:63%}.cv-hero h1{font-size:61px}.cv-hero-intro{font-size:12px;max-width:320px}.cv-orbit-word{right:5%;font-size:10px}.cv-concept-layout{gap:60px}.cv-concept-copy p{font-size:13px}.cv-service-card{padding:24px}.cv-service-card h3{font-size:17px}.cv-service-1 h3,.cv-service-2 h3{font-size:22px}.cv-service-card p{font-size:11px}.cv-service-top{font-size:7px}.cv-faq{gap:50px}.cv-faq h2{font-size:30px}.cv-contact-arrow{width:150px;height:150px;font-size:90px}}
@media(max-width:800px){html{scroll-padding-top:90px}.cv-container{width:calc(100% - 44px)}.cv-section{padding-block:80px}.cv-header{height:85px;padding:0 23px;position:absolute}.cv-logo{width:160px}.cv-menu-toggle{display:flex;align-items:center;gap:10px;border:0;border-radius:50px;padding:14px 17px;background:white;font-size:9px;letter-spacing:.08em;color:var(--ink)}.cv-menu-toggle i{display:block;width:18px;height:9px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);transition:transform .25s}.cv-menu-toggle[aria-expanded=true] i{transform:rotate(-35deg)}.cv-navigation{display:none;position:absolute;top:75px;left:15px;right:15px;border-radius:22px;padding:20px;box-shadow:0 15px 30px #143a3215;background:white}.cv-navigation.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.cv-navigation>a{padding:18px 6px;border-bottom:1px solid var(--line);font-size:14px;flex-direction:row;align-items:center;justify-content:space-between}.cv-navigation small{font-size:11px}.cv-navigation .cv-nav-contact{margin-top:17px;font-size:12px}.cv-hero{border-radius:0 0 35px 35px}.cv-hero-stage{min-height:760px;padding:130px 30px 210px}.cv-hero-copy{width:100%}.cv-eyebrow{font-size:9px;margin-bottom:25px!important}.cv-hero h1{font-size:clamp(47px,7.7vw,65px);line-height:1.24}.cv-hero-intro{font-size:12px;line-height:2;max-width:315px;margin-block:25px!important}.cv-hero-art{top:260px;right:-100px;width:67%;min-width:360px;max-width:500px;opacity:1}.cv-orbit-word{font-size:8px;right:8%;top:42%}.cv-hero-side{display:none}.cv-hero-copy .cv-button{min-width:210px;min-height:54px;font-size:11px}.cv-scroll{right:25px;bottom:25px;font-size:8px}.cv-scroll span{width:36px;height:36px;font-size:20px}.cv-ribbon-card{width:280px;border-radius:20px}.cv-ribbon-card:nth-child(2n){border-top-left-radius:60px}.cv-ribbon-group{gap:16px;padding-right:16px}.cv-ribbon-caption{padding:12px 22px 22px;font-size:7px;letter-spacing:.05em}.cv-motion-toggle{font-size:9px;padding-right:0;gap:7px}.cv-news-flash{gap:20px;align-items:flex-start;padding-block:24px}.cv-micro{font-size:8px;padding-top:2px}.cv-news-flash>a{display:grid;grid-template-columns:1fr 16px;gap:5px 10px;font-size:11px;line-height:1.9}.cv-news-flash time{font-size:10px}.cv-news-flash>a>span{grid-column:1}.cv-news-flash b{grid-row:1/3;grid-column:2;align-self:center}.cv-section-label{font-size:9px;gap:8px;margin-bottom:23px!important}.cv-section-label small{font-size:9px;margin-left:10px}.cv-concept{padding-bottom:65px}.cv-concept-layout{grid-template-columns:1fr;gap:45px;margin-top:25px}.cv-concept-photo{max-width:450px;width:88%;margin:0 auto;padding-bottom:15px}.cv-concept-photo img{aspect-ratio:1.3;border-radius:130px 130px 20px 20px}.cv-photo-label{font-size:35px;max-width:240px;right:-20px;padding:14px 0 0 15px}.cv-concept h2{font-size:29px;line-height:1.75;letter-spacing:-.06em}.cv-concept-copy p{font-size:13px;line-height:2.2}.cv-concept-copy .cv-button{margin-top:16px}.cv-purpose-word{font-size:clamp(34px,7.6vw,60px);margin-top:45px}.cv-decoration-a{width:100px;height:100px;border-width:27px;left:-60px}.cv-decoration-b{width:40px;height:40px;bottom:45%}.cv-root h2{font-size:39px}.cv-concept h2{font-size:29px}.cv-section-head{flex-direction:column;align-items:flex-start;gap:27px;margin-bottom:35px}.cv-section-head>div:last-child>p{font-size:13px}.cv-text-link{font-size:11px;margin-top:20px}.cv-services{border-radius:35px}.cv-service-grid{gap:17px}.cv-service-card{grid-column:span 3;min-height:380px;padding:25px 22px}.cv-service-1,.cv-service-2{grid-column:span 3}.cv-service-5{grid-column:span 3}.cv-service-card h3{font-size:18px}.cv-service-1 h3,.cv-service-2 h3{font-size:20px}.cv-service-card p{font-size:12px;line-height:1.95;padding-right:0}.cv-service-top{font-size:7px;gap:10px}.cv-service-1 .cv-illustration,.cv-service-2 .cv-illustration{height:180px}.cv-service-1 .cv-service-copy,.cv-service-2 .cv-service-copy{max-width:none;padding-bottom:45px}.cv-service-card .cv-circle-arrow{right:20px;bottom:20px}.cv-work-track{padding-left:22px;padding-right:22px;scroll-padding-left:22px;gap:20px}.cv-work-card{flex-basis:82vw}.cv-work-card h3{font-size:16px}.cv-work-image{border-radius:20px}.cv-work-meta{font-size:10px}.cv-work-open{font-size:8px;padding:12px 15px;right:15px;bottom:15px}.cv-work-note{font-size:10px}.cv-work-controls button{width:42px;height:42px}.cv-company{border-radius:35px;padding-top:65px}.cv-company-inner{grid-template-columns:1fr;gap:30px}.cv-company h2{font-size:clamp(40px,11.6vw,59px);line-height:1.35}.cv-company-copy{padding-top:0}.cv-company-copy p{font-size:13px}.cv-company-copy p:first-child{font-size:14px}.cv-company-loop{width:400px;height:400px;border-width:85px;right:-190px;top:-180px}.cv-company-word{font-size:15.2vw;line-height:1.2;margin:45px 0 -13px -3px}.cv-journal-list article a{gap:14px;flex-wrap:wrap;padding:25px 0}.cv-journal-list time{font-size:10px;width:100%}.cv-journal-list h3{font-size:13px;flex:1}.cv-journal-list .cv-circle-arrow{width:35px;height:35px;font-size:20px}.cv-faq{grid-template-columns:1fr;gap:30px;padding:0 0 80px}.cv-faq>div:first-child{position:relative}.cv-faq h2{font-size:31px}.cv-question-mark{font-size:115px;position:absolute;right:18px;top:5px;margin:0;line-height:1}.cv-faq summary{font-size:12px;gap:12px;padding-block:24px}.cv-faq details p{font-size:12px;line-height:2}.cv-contact{padding:60px 0 50px;border-radius:35px 35px 0 0}.cv-contact-en{font-size:clamp(40px,9.2vw,70px);margin-bottom:25px!important}.cv-contact-link{align-items:flex-end;gap:10px}.cv-contact-link h2{font-size:23px;line-height:1.7}.cv-contact-arrow{width:74px;height:74px;font-size:43px;position:absolute;right:0;top:37px}.cv-contact-bottom{flex-direction:column;align-items:flex-start;gap:23px;padding-top:23px;margin-top:30px}.cv-contact-bottom p{font-size:11px;line-height:2}.cv-contact-orbit{width:370px;height:370px;border-width:85px;top:175px;right:-195px}.cv-footer{padding:45px 0 25px}.cv-footer-top{flex-direction:column;gap:30px}.cv-footer-top img{width:160px}.cv-footer nav{gap:22px 30px;font-size:11px}.cv-footer p{font-size:11px}.cv-footer small{font-size:9px}.cv-footer-bottom{gap:15px;flex-wrap:wrap;font-size:9px;margin-top:35px}.cv-footer-bottom>a:last-child{font-size:8px}}
@media(max-width:480px){.cv-hero-stage{padding:125px 25px 235px;min-height:830px}.cv-hero h1{font-size:clamp(43px,11.5vw,54px)}.cv-hero-intro{max-width:270px;font-size:11px;margin:24px 0!important}.cv-hero-art{top:480px;right:-70px;width:350px;min-width:0}.cv-hero-copy .cv-button{min-width:215px}.cv-scroll{bottom:10px;left:25px;right:auto}.cv-orbit-word{font-size:7px;right:8%}.cv-ribbon-card{width:245px}.cv-ribbon-caption>span{max-width:165px;line-height:1.8}.cv-news-flash{gap:15px}.cv-micro{font-size:7px}.cv-service-card,.cv-service-1,.cv-service-2{grid-column:span 6;min-height:0;padding:25px 25px 28px}.cv-service-card .cv-illustration{height:200px;width:100%;margin:0 auto 12px}.cv-service-card h3,.cv-service-1 h3,.cv-service-2 h3{font-size:23px}.cv-service-card p{font-size:12px;padding-right:27px}.cv-service-card .cv-service-copy{padding-bottom:35px;max-width:none}.cv-service-5{display:flex}.cv-service-5 .cv-service-copy{padding-top:0}.cv-service-top{font-size:8px}.cv-service-3,.cv-service-4,.cv-service-5{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.cv-service-3 .cv-service-top,.cv-service-4 .cv-service-top,.cv-service-3 .cv-illustration,.cv-service-4 .cv-illustration,.cv-service-3 .cv-service-copy,.cv-service-4 .cv-service-copy,.cv-service-5 .cv-service-copy{display:contents}.cv-service-3 h3,.cv-service-4 h3,.cv-service-5 h3{grid-column:1;grid-row:2;font-size:20px;align-self:center;margin:15px 0;line-height:1.6}.cv-service-3 p,.cv-service-4 p,.cv-service-5 p{grid-column:1/3;padding-bottom:30px;padding-right:15px}.cv-service-3 .cv-circle-arrow,.cv-service-4 .cv-circle-arrow,.cv-service-5 .cv-circle-arrow{width:35px;height:35px;font-size:20px;bottom:20px}.cv-concept h2{font-size:26px}.cv-photo-label{font-size:30px;max-width:210px}.cv-concept-copy p{font-size:12px}.cv-purpose-word{font-size:8vw}.cv-faq h2{font-size:28px}.cv-question-mark{right:5px;font-size:100px}.cv-contact-arrow{width:65px;height:65px;font-size:38px;top:43px}.cv-contact-en{font-size:10vw}.cv-contact-en span{font-size:.75em}.cv-contact-link h2{font-size:22px}.cv-footer-bottom>a:last-child{margin-left:0}}
@media(max-width:360px){.cv-logo{width:140px}.cv-header{padding-inline:18px}.cv-hero-stage{padding-left:20px;padding-right:20px;min-height:780px}.cv-hero h1{font-size:41px}.cv-hero-art{width:310px;top:450px;right:-65px}.cv-hero-intro{max-width:260px}.cv-eyebrow{font-size:8px}.cv-container{width:calc(100% - 36px)}.cv-section-label small{font-size:8px;margin-left:5px}.cv-concept h2{font-size:23px}.cv-faq h2{font-size:25px}.cv-question-mark{font-size:85px}.cv-contact-arrow{width:55px;height:55px;font-size:34px}.cv-contact-link h2{font-size:19px}.cv-service-1 h3,.cv-service-2 h3{font-size:20px}.cv-service-card{padding-inline:20px}.cv-service-3 h3,.cv-service-4 h3,.cv-service-5 h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cv-root *, .cv-root *::before,.cv-root *::after{animation:none!important;transition:none!important}.cv-motion-ready [data-reveal]{opacity:1;transform:none}.cv-hero-art{transform:none!important}}
@media print{.cv-header{position:static}.cv-hero-art,.cv-motion-toggle,.cv-work-controls{display:none}.cv-hero-stage{min-height:0;padding:30px}.cv-hero-copy{width:100%}.cv-work-track{display:grid;grid-template-columns:1fr 1fr;overflow:visible;padding:20px}.cv-ribbon-group[aria-hidden]{display:none}.cv-ribbon-track{width:auto;transform:none}.cv-project-ribbon{display:none}.cv-section{padding:30px}.cv-service-card,.cv-work-card{break-inside:avoid}.cv-motion-ready [data-reveal]{opacity:1;transform:none}}

/* Optional motion layer — 3.1.0. Original design remains underneath. */
.cv-motion-art{display:block;width:100%;height:100%;overflow:visible}
.cv-motion-art path,.cv-motion-art circle{transform-box:fill-box;transform-origin:center}
.cv-enhanced-motion .cv-art-cyan{animation:cv-cyan-drift 8s ease-in-out infinite}
.cv-enhanced-motion .cv-art-purple{animation:cv-purple-drift 10s ease-in-out infinite}
.cv-enhanced-motion .cv-art-back{animation:cv-back-drift 12s ease-in-out infinite}
.cv-enhanced-motion .cv-art-dot-one{animation:cv-dot-drift 6s ease-in-out infinite}
.cv-enhanced-motion .cv-art-dot-two{animation:cv-dot-drift 7s ease-in-out -3s infinite reverse}
.cv-enhanced-motion .cv-decoration-a,.cv-enhanced-motion .cv-company-loop{animation:cv-ring-drift 12s ease-in-out infinite}
.cv-enhanced-motion .cv-decoration-b{animation:cv-quarter-turn 10s ease-in-out infinite}
.cv-enhanced-motion .cv-contact-orbit,.cv-enhanced-motion .cv-page-orbit{animation:cv-ring-drift 14s ease-in-out -4s infinite reverse}
.cv-enhanced-motion .cv-service-card .cv-illustration,.cv-enhanced-motion .cv-directory-card .cv-illustration,.cv-enhanced-motion .cv-detail-illustration .cv-illustration{animation:cv-illustration-drift 7s ease-in-out infinite}
.cv-enhanced-motion .cv-service-card:nth-child(even) .cv-illustration,.cv-enhanced-motion .cv-directory-card:nth-child(even) .cv-illustration{animation-delay:-3s}
.cv-hero-line{display:block;overflow:clip;padding:.08em .05em;margin:-.08em -.05em}
.cv-hero-line>span{display:block;transform-origin:left bottom}
.cv-motion-fixed{position:fixed;bottom:16px;right:18px;z-index:40;background:#fffffff0;border:1px solid #cad8d6;border-radius:30px;padding:10px 15px;box-shadow:0 3px 15px #17292e0a}
.cv-motion-offscreen,.cv-motion-offscreen *,.cv-motion-background *{animation-play-state:paused!important}
@keyframes cv-cyan-drift{0%,100%{transform:translate(0,0)}50%{transform:translate(-17px,18px)}}
@keyframes cv-purple-drift{0%,100%{transform:translate(0,0)}50%{transform:translate(16px,-14px)}}
@keyframes cv-back-drift{0%,100%{transform:translate(0,0)}50%{transform:translate(7px,22px)}}
@keyframes cv-dot-drift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-12px,30px) scale(.88)}}
@keyframes cv-ring-drift{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(24px) scale(1.06)}}
@keyframes cv-quarter-turn{0%,100%{transform:rotate(0)}50%{transform:rotate(90deg) translate(-8px,8px)}}
@keyframes cv-illustration-drift{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-9px) rotate(2deg)}}
@media(max-width:800px){.cv-motion-fixed{font-size:9px;bottom:12px;right:12px;padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.cv-enhanced-motion *{animation:none!important;transition:none!important}.cv-hero-line>span{transform:none!important;opacity:1!important}}
@media print{.cv-motion-fixed{display:none}.cv-enhanced-motion *{animation:none!important}}

.cv-root [hidden]{display:none!important}.cv-mobile-cta{display:none}
@media(max-width:767px){.cv-mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:60;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line)}.cv-mobile-cta .cv-button{min-width:0;min-height:48px;font-size:11px;padding:8px 12px;gap:8px}.cv-mobile-cta .cv-button>span{width:26px;height:26px;font-size:16px}.cv-root:has(.cv-mobile-cta:not([hidden])) .cv-motion-fixed{bottom:90px}}

/* Seven-service catalog: existing card visuals with a full-width final row. */
.cv-service-grid>.cv-service-card{background:#f3f3ef}.cv-service-grid>.cv-service-1{background:#bcece5}.cv-service-grid>.cv-service-2{background:#ded0ef}
.cv-service-card.cv-service-wide,.cv-directory-card.cv-service-wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(220px,.8fr) 1.2fr;column-gap:48px;align-items:center}.cv-service-wide>.cv-illustration,.cv-service-wide>.cv-directory-art{grid-column:1;grid-row:1/5;width:100%;max-width:460px;margin:auto}.cv-service-wide>.cv-service-top,.cv-service-wide>.cv-directory-top,.cv-service-wide>.cv-service-copy,.cv-service-wide>h2,.cv-service-wide>p,.cv-service-wide>.cv-directory-bottom{grid-column:2}.cv-service-wide>.cv-service-copy{padding-block:24px}.cv-service-wide>.cv-directory-bottom{margin-top:10px}.cv-service-wide>.cv-directory-art{float:none}.cv-package-badge{display:inline-block;background:white;border:1px solid #0b6f74;color:#0b6f74;border-radius:100px;font-size:10px;font-weight:600;line-height:1.6;padding:5px 10px;vertical-align:middle;white-space:nowrap;margin-left:8px}.cv-service-card.cv-service-wide .cv-circle-arrow,.cv-service-card.cv-service-aio .cv-circle-arrow{top:25px;bottom:auto}.cv-service-card>.cv-directory-bottom{font-size:11px;display:block;padding-top:18px;border-top:1px solid #dcddd6;margin-top:auto}.cv-service-card.cv-service-aio{position:relative}
@media(max-width:767px){.cv-service-card.cv-service-wide,.cv-directory-card.cv-service-wide,.cv-service-card.cv-service-aio{display:flex;flex-direction:column;align-items:stretch;gap:0}.cv-service-card.cv-service-wide>.cv-service-top,.cv-service-card.cv-service-aio>.cv-service-top{display:flex;order:0}.cv-service-wide>.cv-illustration,.cv-service-wide>.cv-directory-art,.cv-service-aio>.cv-illustration{display:block;order:1;max-width:100%;margin:12px auto}.cv-service-wide>.cv-service-copy,.cv-service-aio>.cv-service-copy{display:block;order:2;padding-bottom:24px}.cv-service-wide>.cv-directory-bottom,.cv-service-aio>.cv-directory-bottom{order:3}.cv-service-wide>.cv-directory-art{width:100%}.cv-package-badge{margin:8px 0 0 8px}}

/* TOP cards intentionally independent of the service-directory cards. */
.cv-service-grid>.cv-service-card--top{background:#fff;box-shadow:0 1px 2px rgba(31,42,48,.04),0 8px 24px rgba(31,42,48,.06);border-radius:24px}.cv-service-grid>.cv-service-card--top.cv-service-1{background:#bcece5}.cv-service-grid>.cv-service-card--top.cv-service-2{background:#ded0ef}.cv-service-card--top.cv-service-wide .cv-circle-arrow,.cv-service-card--top.cv-service-aio .cv-circle-arrow{top:auto;bottom:27px}.cv-service-card--top>.cv-directory-bottom{display:none}.cv-service-card--top:hover{box-shadow:0 20px 28px #183d3d0c}
.cv-enhanced-motion .cv-service-card--top.cv-advertising-card .cv-illustration,.cv-enhanced-motion .cv-service-card--list.cv-advertising-card .cv-illustration{animation:none}

/* One date component for articles, cards, related posts, and TOP. */
.c-post-dates{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;white-space:nowrap;font-family:Inter,Arial,sans-serif;font-size:11px;color:#6e7a7c;letter-spacing:0;font-variant-numeric:tabular-nums;line-height:1.5}
.c-post-dates__item{display:inline-flex;align-items:center;gap:3px;white-space:nowrap;flex-shrink:0;font:inherit;color:inherit}
.c-post-dates__sep{display:inline-flex;opacity:.65;flex-shrink:0}
.c-post-dates svg{display:block;flex-shrink:0;width:14px;height:14px}
.c-post-dates__item span{display:inline;white-space:nowrap}
.cv-article-heading>.c-post-dates{margin-top:20px;font-size:12px}
.cv-journal-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:8px}
.cv-journal-meta>.c-post-dates{min-width:0;flex-shrink:0}
.cv-journal-meta>span{margin-left:auto;white-space:nowrap}
.cv-news-band .c-post-dates,.cv-journal-list .c-post-dates{font-size:11px}
