/* Daylight pages, a deeper homepage, and one clear path to a conversation. */
.home-studio { padding-top: 70px; padding-bottom: 80px; }
.studio-intro { margin-bottom: 45px; }
.studio-intro>.eyebrow,.home-section-heading .eyebrow,.home-answers .eyebrow { display: block; font-size: 10px; letter-spacing: .09em; color: #75727e; margin-bottom: 23px; }
.studio-intro h2 { font-size: clamp(48px,5.5vw,78px); line-height: 1.03; letter-spacing: -.06em; }
.studio-stage { min-height: 570px; border-radius: 28px; padding: 58px; display: grid; grid-template-columns: 1fr 1fr; align-items: center; }
.studio-stage>.light-art { background-image: linear-gradient(100deg,#04030af0,#090716cf 55%,#09071670),var(--texture); }
.studio-stage-copy { position: relative; z-index: 2; }
.studio-stage-copy>.eyebrow { color: #c4b8dc; font-size: 9px; letter-spacing: .09em; margin-bottom: 38px; }
.studio-stage h3 { font-size: clamp(48px,4.8vw,68px); line-height: 1.02; letter-spacing: -.055em; }
.studio-stage p { color: #d1cada; font-size: 16px; line-height: 1.7; margin: 25px 0 30px; }
.studio-stage .text-link { font-size: 12px; color: #f6f1ff; }
.studio-sculpture { position: relative; height: 330px; perspective: 900px; }
.glass-blade { position: absolute; height: 290px; width: 155px; border: 1px solid #ffffff3b; border-radius: 80px; padding: 45px 24px; display: flex; flex-direction: column; align-items: center; justify-content: space-between; box-shadow: inset 3px 0 16px #ffffff28,14px 22px 60px #0007; background-image: linear-gradient(90deg,#ffffff12,#0005,#ffffff19),var(--texture); background-size: cover; }
.glass-blade>span { font-size: 13px; letter-spacing: .03em; color: #f5efff; }
.glass-blade>.brand-symbol { width: 26px; height: 26px; color: #ffffffc9; }
.blade-brand { left: 7%; top: 32px; transform: rotate(-19deg); --texture: url('assets/light-rose.webp'); }
.blade-build { left: 35%; top: 0; transform: rotate(4deg); --texture: url('assets/light-violet.webp'); z-index: 1; }
.blade-grow { left: 61%; top: 40px; transform: rotate(21deg); --texture: url('assets/light-green.webp'); }
.studio-stage-foot { grid-column: 1/-1; display: flex; align-items: center; justify-content: space-between; gap: 22px; border-top: 1px solid #ffffff25; padding-top: 25px; margin-top: 45px; color: #d1c6e2; font-size: 10px; }
.studio-stage-foot i { flex: 1; height: 1px; max-width: 70px; background: #ffffff29; }
.motion-ready:not(.motion-paused) .studio-stage.is-inview .studio-sculpture { animation: studio-float 9s ease-in-out infinite alternate; }
@keyframes studio-float { from { transform: translateY(-5px) rotate(-1deg); } to { transform: translateY(7px) rotate(1deg); } }
.home-next { background: #f0eef5; padding: 85px 0; }
.home-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 35px; margin-bottom: 45px; }
.home-section-heading h2,.home-answers h2 { font-size: clamp(43px,4.4vw,63px); line-height: 1.04; letter-spacing: -.055em; }
.home-section-heading>.text-link { font-size: 12px; padding-bottom: 7px; }
.home-next-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.home-offer { min-height: 430px; border-radius: 25px; padding: 40px; display: flex; flex-direction: column; align-items: start; }
.home-offer>.eyebrow { font-size: 9px; letter-spacing: .07em; color: #d0ccd6; margin-bottom: 33px; }
.home-offer h3 { font-size: clamp(35px,3.4vw,49px); line-height: 1.04; letter-spacing: -.05em; }
.home-offer p { font-size: 15px; color: #e4dfeb; margin-top: 20px; }
.home-offer-links { margin-top: auto; padding-top: 38px; display: flex; align-items: start; flex-direction: column; gap: 20px; }
.home-offer-links .button { min-height: 45px; padding: 12px 18px; font-size: 11px; gap: 24px; }
.home-offer-links .text-link { font-size: 11px; }
.home-offer>.brand-symbol { position: absolute; bottom: 33px; right: 33px; width: 24px; height: 24px; color: var(--accent); }
.home-process { padding: 100px 0; }
.home-process-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
.home-process-grid article { padding-top: 25px; border-top: 1px solid #d5d0df; }
.home-process-grid article>span { font-size: 9px; color: #777081; letter-spacing: .07em; }
.home-process-grid h3 { font-size: 28px; letter-spacing: -.04em; line-height: 1.1; margin: 32px 0 16px; }
.home-process-grid p { max-width: 290px; font-size: 15px; color: #726e7b; line-height: 1.6; }
.home-answers { background: #f1f0f5; padding: 85px 0; }
.home-answers .text-link { margin-top: 32px; font-size: 12px; }
.home-answers .faq-list { align-self: start; }
.home-answers .faq-list summary { font-size: 18px; }
.home-answers .answer p { font-size: 15px; line-height: 1.75; }

/* Balanced site navigation and a compact, recognisable signature. */
.clean-footer { padding: 75px 0 25px; color: #f7f5fc; background: #111014; }
.footer-lead { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; padding-bottom: 60px; border-bottom: 1px solid #ffffff22; }
.footer-lead .eyebrow { display: block; font-size: 9px; letter-spacing: .09em; color: #a8a0b9; margin-bottom: 25px; }
.footer-lead h2 { font-size: clamp(58px,6.7vw,94px); line-height: .99; letter-spacing: -.06em; }
.footer-connect { display: flex; flex-direction: column; align-items: flex-start; gap: 13px; justify-self: end; }
.footer-connect>.button { min-height: 49px; font-size: 12px; gap: 38px; margin-bottom: 12px; }
.button-light { background: #f5f2fa; color: #16121e; }
.footer-connect>a:not(.button) { font-size: 14px; color: #bab3c8; }
.footer-connect>a:hover { color: #bba4ff; }
.footer-sitemap { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 38px; padding: 50px 0; border-bottom: 1px solid #ffffff22; }
.footer-map-column { display: flex; flex-direction: column; align-items: start; }
.footer-map-column h3 { font-size: 13px; font-weight: 600; letter-spacing: -.01em; margin-bottom: 19px; color: #f6f2fc; }
.footer-map-column a { display: flex; align-items: center; min-height: 34px; font-size: 12px; color: #aca5b8; line-height: 1.5; transition: color .2s; }
.footer-map-column a:hover { color: #f5edff; }
.footer-brand-row.signature { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 30px; align-items: center; padding: 36px 0; }
.footer-brand .collabo-logo { width: 165px; }
.footer-brand-note { text-align: center; font-size: 11px; color: #b7afc4; }
.footer-brand-row .signature-play { padding: 10px; width: 55px; height: 55px; justify-self: end; margin: 0; }
.footer-brand-row .signature-play>.brand-symbol { width: 31px; height: 31px; }
.footer-brand-row .signature-message { right: 60px; bottom: 51px; font-size: 10px; }
.clean-footer .footer-bottom { display: flex; justify-content: space-between; gap: 25px; border-top: 1px solid #ffffff22; padding-top: 22px; margin: 0; font-size: 10px; color: #a69daf; }
.clean-footer .footer-bottom>div { display: flex; gap: 25px; }

/* Two supplied calendars share one considered booking experience. */
.booking-intro { padding-bottom: 44px; }
.booking-intro .breadcrumb { padding-top: 22px; }
.booking-heading { display: grid; grid-template-columns: 1.3fr 1fr; gap: 65px; align-items: end; padding-top: 30px; }
.booking-heading .eyebrow { display: block; font-size: 9px; color: #736782; margin-bottom: 24px; }
.booking-heading h1 { font-size: clamp(50px,5vw,73px); line-height: 1.04; letter-spacing: -.055em; }
.booking-heading p { max-width: 390px; color: #706979; font-size: 17px; line-height: 1.65; }
.booking-heading .text-link { margin-top: 20px; font-size: 12px; }
.booking-section { padding-bottom: 80px; }
.booking-frame { background: #fff; border-radius: 24px; border: 1px solid #e7e0ef; overflow: hidden; box-shadow: 0 10px 60px #46355506; }
.booking-frame iframe { display: block; width: 100%; height: 960px; min-height: 780px; }
.booking-help { display: flex; justify-content: space-between; gap: 25px; margin-top: 22px; font-size: 11px; color: #776e83; }
.booking-help>a { display: flex; gap: 10px; align-items: center; color: #49404f; }
.booking-help .arrow { width: 12px; height: 12px; }
.booking-privacy { font-size: 10px; color: #867e91; margin-top: 14px; }
.booking-privacy a { text-decoration: underline; text-underline-offset: 3px; }
.sitemap-intro { padding-bottom: 65px; }
.sitemap-intro>.eyebrow { display: block; font-size: 10px; color: #80748f; margin: 35px 0 23px; }
.sitemap-intro h1 { font-size: clamp(50px,6vw,85px); letter-spacing: -.06em; }
.sitemap-intro p { color: #746c7e; font-size: 17px; margin-top: 23px; }
.sitemap-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 55px 45px; padding-bottom: 90px; }
.sitemap-grid section { border-top: 1px solid #d7d0e0; padding-top: 25px; }
.sitemap-grid h2 { font-size: 26px; margin-bottom: 20px; }
.sitemap-grid ul { list-style: none; padding: 0; }
.sitemap-grid a { display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 44px; padding: 9px 0; font-size: 14px; color: #6d627b; }
.sitemap-grid .arrow { flex-shrink: 0; width: 12px; height: 12px; }
@media(max-width:1100px) {
 .studio-stage { padding: 40px; min-height: 520px; }
 .studio-sculpture { transform: scale(.85); transform-origin: center; }
 .glass-blade { width: 130px; height: 270px; }
 .blade-grow { left: 58%; }
 .footer-sitemap { gap: 25px; }
 .home-offer { padding: 32px; }
}
@media(max-width:900px) {
 .studio-stage { grid-template-columns: 1fr; }
 .studio-stage-copy { max-width: 510px; }
 .studio-sculpture { width: 440px; max-width: 100%; justify-self: center; height: 340px; margin-top: 30px; }
 .studio-stage-foot { margin-top: 15px; }
 .home-process-grid { gap: 22px; }
 .home-process-grid h3 { font-size: 25px; }
 .footer-sitemap { grid-template-columns: 1fr 1fr; gap: 40px; }
 .booking-heading { grid-template-columns: 1fr; gap: 25px; }
 .booking-heading p { max-width: 580px; }
 .sitemap-grid { grid-template-columns: 1fr 1fr; }
}
@media(max-width:700px) {
 .home-studio { padding: 55px 0; }
 .studio-intro { margin-bottom: 29px; }
 .studio-intro h2 { font-size: 43px; }
 .studio-intro>.eyebrow,.home-section-heading .eyebrow,.home-answers .eyebrow { font-size: 8px; margin-bottom: 20px; }
 .studio-stage { padding: 30px 25px 25px; border-radius: 23px; min-height: 0; }
 .studio-stage-copy>.eyebrow { font-size: 7px; margin-bottom: 26px; }
 .studio-stage h3 { font-size: 43px; }
 .studio-stage p { font-size: 14px; margin: 22px 0 24px; }
 .studio-stage p br { display: none; }
 .studio-stage .text-link { font-size: 11px; }
 .studio-sculpture { width: 285px; height: 225px; margin-top: 32px; }
 .glass-blade { width: 93px; height: 190px; padding: 30px 15px; }
 .glass-blade>span { font-size: 10px; }
 .glass-blade>.brand-symbol { width: 18px; height: 18px; }
 .blade-brand { left: 3%; top: 18px; }
 .blade-build { left: 32%; }
 .blade-grow { left: 59%; top: 22px; }
 .studio-stage-foot { gap: 9px; font-size: 8px; padding-top: 20px; }
 .studio-stage-foot i { max-width: 12px; }
 .home-next { padding: 53px 0; }
 .home-section-heading { display: block; margin-bottom: 30px; }
 .home-section-heading h2,.home-answers h2 { font-size: 42px; }
 .home-section-heading>.text-link { margin-top: 24px; font-size: 11px; }
 .home-next-grid { grid-template-columns: 1fr; gap: 16px; }
 .home-offer { min-height: 375px; padding: 30px; border-radius: 22px; }
 .home-offer h3 { font-size: 38px; }
 .home-offer p { font-size: 14px; max-width: 230px; line-height: 1.6; }
 .home-offer>.eyebrow { margin-bottom: 28px; font-size: 8px; }
 .home-offer-links { padding-top: 30px; gap: 18px; }
 .home-process { padding: 59px 0; }
 .home-process-grid { grid-template-columns: 1fr; gap: 30px; }
 .home-process-grid article { padding-top: 20px; }
 .home-process-grid h3 { margin: 20px 0 12px; font-size: 28px; }
 .home-process-grid p { font-size: 14px; max-width: 320px; }
 .home-answers { padding: 55px 0; }
 .home-answers .faq-layout { gap: 28px; }
 .home-answers .text-link { margin-top: 25px; }
 .home-answers .faq-list summary { font-size: 16px; min-height: 75px; }
 .home-answers .answer p { font-size: 14px; }
 .clean-footer { padding-top: 50px; }
 .footer-lead { grid-template-columns: 1fr; gap: 30px; padding-bottom: 37px; }
 .footer-lead h2 { font-size: 59px; }
 .footer-lead .eyebrow { font-size: 8px; margin-bottom: 22px; }
 .footer-connect { justify-self: start; gap: 11px; }
 .footer-connect>.button { min-height: 47px; font-size: 11px; gap: 35px; }
 .footer-connect>a:not(.button) { font-size: 13px; min-height: 26px; }
 .footer-sitemap { gap: 33px 24px; padding: 35px 0; }
 .footer-map-column h3 { font-size: 12px; margin-bottom: 15px; }
 .footer-map-column a { min-height: 42px; font-size: 11px; }
 .footer-brand-row.signature { grid-template-columns: 1fr auto; gap: 15px; padding: 25px 0; }
 .footer-brand .collabo-logo { width: 150px; }
 .footer-brand-note { grid-column: 1; grid-row: 2; text-align: left; font-size: 10px; }
 .footer-brand-row .signature-play { grid-column: 2; grid-row: 1/3; }
 .footer-brand-row .signature-message { bottom: 15px; right: 0; font-size: 8px; }
 .clean-footer .footer-bottom { flex-direction: column; gap: 16px; font-size: 9px; }
 .clean-footer .footer-bottom>div { justify-content: space-between; gap: 18px; }
 .booking-intro { padding-bottom: 29px; }
 .booking-heading { padding-top: 14px; gap: 23px; }
 .booking-heading h1 { font-size: 43px; }
 .booking-heading .eyebrow { font-size: 8px; margin-bottom: 20px; }
 .booking-heading p { font-size: 15px; }
 .booking-heading .text-link { font-size: 11px; }
 .booking-section { width: calc(100% - 18px); padding-bottom: 50px; }
 .booking-frame { border-radius: 20px; }
 .booking-frame iframe { min-height: 900px; height: 1200px; }
 .booking-help { flex-direction: column; gap: 12px; margin: 19px 12px 0; font-size: 10px; }
 .booking-help>a { min-height: 36px; }
 .booking-privacy { margin: 12px; font-size: 9px; line-height: 1.7; }
 .sitemap-intro { padding-bottom: 40px; }
 .sitemap-intro h1 { font-size: 49px; }
 .sitemap-intro p { font-size: 15px; line-height: 1.6; }
 .sitemap-grid { grid-template-columns: 1fr; gap: 35px; padding-bottom: 60px; }
}
@media(max-width:360px) {
 .studio-intro h2 { font-size: 36px; }
 .studio-stage { padding-left: 23px; padding-right: 23px; }
 .studio-stage h3 { font-size: 38px; }
 .studio-sculpture { transform: scale(.87); transform-origin: left center; }
 .studio-stage-foot { font-size: 7px; gap: 7px; }
 .home-offer { padding: 26px; }
 .home-offer h3 { font-size: 34px; }
 .home-offer>.brand-symbol { right: 23px; bottom: 28px; width: 20px; }
 .footer-map-column a { font-size: 10px; }
 .booking-heading h1 { font-size: 37px; }
}
@media(prefers-reduced-motion:reduce) { .studio-sculpture { animation: none !important; } }

/* Specialist verticals, within the same Collabo world. */
.mega-verticals { grid-column: 1 / -1; border-top: 1px solid #ded9e8; margin-top: 12px; padding-top: 19px; }
.mega-verticals>.eyebrow { display: block; font-size: 9px; letter-spacing: .08em; color: #83728e; margin-bottom: 5px; }
.mega-verticals>div { display: grid; grid-template-columns: 1fr 1fr; gap: 0 32px; }
.mega-verticals a { color: #25212c !important; }
.footer-subgroup { font-size: 10px; font-weight: 500; color: #c5b6db; margin: 18px 0 8px; }
.vertical-entry-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.vertical-directory { padding: 80px 0; }
.vertical-directory .home-section-heading>p { color: #766c80; font-size: 15px; line-height: 1.65; }
.vertical-entry { border-radius: 26px; padding: 40px; min-height: 370px; display: flex; flex-direction: column; align-items: start; color: #fcfaff; }
.vertical-entry>.light-art,.vertical-feature>.light-art { background-image: linear-gradient(100deg,#030308d9,#03030888 62%,#03030820),var(--texture); }
.vertical-entry>.eyebrow { font-size: 9px; letter-spacing: .07em; color: #e3d6ed; }
.vertical-entry h3 { font-size: clamp(38px,4vw,58px); letter-spacing: -.05em; margin: 45px 0 20px; }
.vertical-entry p { color: #e7dfed; font-size: 16px; line-height: 1.65; max-width: 360px; }
.vertical-entry-link { display: flex; align-items: center; gap: 40px; padding-top: 40px; margin-top: auto; font-size: 12px; }
.vertical-entry-link .arrow { width: 16px; height: 16px; }
.solutions-label { padding: 10px 0 38px; }
.solutions-label>.eyebrow { font-size: 9px; color: #80748f; display: block; margin-bottom: 20px; }
.solutions-label h2 { font-size: clamp(37px,4vw,55px); letter-spacing: -.05em; }
.vertical-intro { padding: 90px 0; }
.vertical-intro>.container { display: grid; grid-template-columns: 1.2fr 1fr; gap: 80px; align-items: center; }
.vertical-identity { display: flex; flex-direction: column; align-items: start; gap: 24px; }
.vertical-logo { height: 118px; display: flex; align-items: center; justify-content: center; }
.vertical-logo img { height: 118px; width: auto; max-width: 150px; object-fit: contain; }
.vertical-logo-nuolabs { background: #fff; border-radius: 24px; width: 118px; overflow: hidden; }
.vertical-logo-creatorspace img { height: 112px; }
.vertical-identity .eyebrow { display: block; font-size: 9px; color: #7b6b8c; margin-bottom: 22px; }
.vertical-identity h2 { font-size: clamp(36px,3.5vw,50px); letter-spacing: -.05em; line-height: 1.08; }
.vertical-intro-copy p { font-size: 18px; color: #68616f; line-height: 1.75; }
.vertical-intro-copy p+p { font-size: 15px; margin-top: 24px; color: #817689; }
.vertical-scope { padding: 80px 0; background: #efedf5; }
.vertical-scope .service-card-grid { grid-template-columns: 1fr 1fr; }
.vertical-scope .service-card { min-height: 330px; }
.vertical-method { padding: 95px 0; }
.vertical-method .approach-layout { gap: 80px; }
.vertical-method h2,.vertical-faq h2,.vertical-close h2 { font-size: clamp(40px,4.3vw,61px); line-height: 1.05; letter-spacing: -.055em; }
.vertical-method .approach-layout>div>p { max-width: 380px; color: #786e82; font-size: 16px; line-height: 1.75; margin-top: 26px; }
.vertical-method .process-list { align-self: start; }
.vertical-feature { border-radius: 28px; padding: 60px; color: #fbf8ff; display: grid; grid-template-columns: 1.4fr 1fr; align-items: center; gap: 50px; min-height: 430px; }
.vertical-feature .eyebrow { display: block; color: #decfe8; font-size: 9px; letter-spacing: .06em; margin-bottom: 30px; }
.vertical-feature h2 { font-size: clamp(44px,4.5vw,65px); letter-spacing: -.055em; line-height: 1.04; }
.vertical-feature p { color: #e8dfec; max-width: 500px; font-size: 16px; line-height: 1.75; margin-top: 27px; }
.vertical-feature ul { display: flex; flex-wrap: wrap; gap: 9px; padding: 0; list-style: none; margin-top: 32px; }
.vertical-feature li { border: 1px solid #ffffff40; border-radius: 25px; padding: 8px 12px; font-size: 10px; }
.vertical-glass { position: relative; height: 270px; max-width: 330px; width: 100%; justify-self: center; }
.vertical-glass>span { position: absolute; width: 48%; height: 90%; top: 5%; border-radius: 80px; border: 1px solid #ffffff90; background: repeating-linear-gradient(90deg,#ffffff04 0,#ffffff2e 3px,#02000b28 7px,transparent 12px),linear-gradient(130deg,#e7ffed44,#a8a6ff25); box-shadow: inset 8px 0 20px #ffffff16,15px 20px 35px #0003; transform: rotate(-18deg); }
.vertical-glass>span:nth-child(1) { left: 0; }
.vertical-glass>span:nth-child(2) { left: 27%; top: 0; transform: rotate(0); }
.vertical-glass>span:nth-child(3) { left: 53%; transform: rotate(18deg); }
.vertical-glass>.brand-symbol { position: absolute; width: 45px; height: 45px; left: 43%; top: 39%; color: #fff5; }
.vertical-faq { padding: 95px 0; }
.vertical-faq .eyebrow { display: block; font-size: 9px; color: #83728e; margin-bottom: 25px; }
.vertical-close { background: #edeaf3; padding: 70px 0; }
.vertical-close>.container { display: grid; grid-template-columns: 1.3fr 1fr; gap: 50px; align-items: center; }
.vertical-close .eyebrow { display: block; color: #82708f; font-size: 9px; margin-bottom: 24px; }
.vertical-close p { margin-top: 24px; font-size: 16px; line-height: 1.7; color: #7b7084; max-width: 380px; }
.vertical-close-actions { display: flex; flex-direction: column; align-items: start; gap: 27px; justify-self: end; }
.vertical-close-actions .button { font-size: 12px; min-height: 48px; }
.vertical-phone { font-size: 24px; letter-spacing: -.035em; }
.vertical-phone>span { font-size: 11px; display: flex; align-items: center; gap: 35px; letter-spacing: 0; color: #76677f; margin-top: 12px; }
.vertical-phone .arrow { width: 12px; height: 12px; }
.vertical-sibling { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-top: 35px; padding-bottom: 35px; }
.vertical-sibling>span { font-size: 11px; color: #82768c; }
.vertical-sibling .text-link { font-size: 12px; }
@media(max-width:900px) {
 .vertical-intro>.container { gap: 45px; }
 .vertical-feature { padding: 40px; gap: 30px; }
 .vertical-glass { height: 210px; }
 .vertical-method .approach-layout { gap: 40px; }
}
@media(max-width:700px) {
 .mega-verticals { margin-top: 6px; padding-top: 18px; }
 .mega-verticals>div { display: flex; flex-direction: column; gap: 0; }
 .vertical-directory { padding: 52px 0; }
 .vertical-directory .home-section-heading>p { font-size: 14px; margin-top: 20px; }
 .vertical-entry-grid { grid-template-columns: 1fr; gap: 18px; }
 .vertical-entry { min-height: 340px; padding: 30px; border-radius: 24px; }
 .vertical-entry h3 { font-size: 40px; margin-top: 40px; }
 .vertical-entry p { font-size: 14px; }
 .vertical-entry-link { font-size: 11px; padding-top: 32px; }
 .solutions-label { padding-top: 0; padding-bottom: 30px; }
 .solutions-label h2 { font-size: 35px; }
 .vertical-intro { padding: 55px 0; }
 .vertical-intro>.container { grid-template-columns: 1fr; gap: 27px; }
 .vertical-identity { gap: 22px; }
 .vertical-identity h2 { font-size: 36px; }
 .vertical-identity .eyebrow { font-size: 8px; margin-bottom: 20px; }
 .vertical-intro-copy p { font-size: 16px; line-height: 1.75; }
 .vertical-intro-copy p+p { font-size: 14px; margin-top: 20px; }
 .vertical-scope { padding: 55px 0; }
 .vertical-scope .service-card-grid { grid-template-columns: 1fr; }
 .vertical-scope .service-card { min-height: 310px; }
 .vertical-method { padding: 58px 0; }
 .vertical-method .approach-layout { gap: 30px; }
 .vertical-method h2,.vertical-faq h2,.vertical-close h2 { font-size: 40px; }
 .vertical-method .approach-layout>div>p { font-size: 14px; margin-top: 21px; }
 .vertical-feature { padding: 32px 27px; grid-template-columns: 1fr; gap: 30px; border-radius: 24px; }
 .vertical-feature .eyebrow { font-size: 8px; line-height: 1.7; max-width: 230px; margin-bottom: 26px; }
 .vertical-feature h2 { font-size: 43px; }
 .vertical-feature p { font-size: 14px; margin-top: 23px; }
 .vertical-feature ul { margin-top: 23px; gap: 7px; }
 .vertical-feature li { font-size: 9px; padding: 7px 10px; }
 .vertical-glass { max-width: 235px; height: 195px; margin: 10px 0 8px; }
 .vertical-faq { padding: 58px 0; }
 .vertical-faq .faq-layout { gap: 28px; }
 .vertical-faq .faq-list summary { font-size: 16px; }
 .vertical-faq .answer p { font-size: 14px; }
 .vertical-close { padding: 50px 0; }
 .vertical-close>.container { grid-template-columns: 1fr; gap: 30px; }
 .vertical-close p { font-size: 14px; }
 .vertical-close-actions { justify-self: start; gap: 25px; }
 .vertical-sibling { align-items: start; flex-direction: column; gap: 17px; padding-top: 28px; padding-bottom: 28px; }
 .vertical-sibling .text-link { font-size: 11px; }
}
@media(max-width:360px) {
 .vertical-entry h3 { font-size: 35px; }
 .vertical-identity h2 { font-size: 32px; }
 .vertical-scope .home-section-heading h2 { font-size: 35px; }
 .vertical-feature h2 { font-size: 37px; }
 .vertical-method h2,.vertical-faq h2,.vertical-close h2 { font-size: 35px; }
}
