/* Figure editorial system — navigation, hierarchy and restrained motion. */
:root{--gray:#626262;--ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:120px}
.header{height:88px;padding:20px var(--pad);background:rgba(255,255,255,.97);border-bottom:1px solid #e4e4e4}
.nav{gap:34px}
.nav-link{min-height:44px;display:inline-flex;align-items:center;gap:14px}
.nav-contact{background:var(--ink);color:white;border:1px solid var(--ink);border-radius:28px;padding:13px 23px;margin-left:8px;text-transform:none}
.nav-contact:hover{background:#333;border-color:#333}.nav-contact[aria-current=page]{outline:1px solid #555;outline-offset:4px}
.services-menu>summary{cursor:pointer;list-style:none;user-select:none}.services-menu>summary::-webkit-details-marker{display:none}
.current-section{border-bottom-color:var(--ink)}.menu-plus{font-size:22px;line-height:1;transition:transform .2s var(--ease)}
.services-menu[open] .menu-plus{transform:rotate(45deg)}
.mega-panel{position:absolute;top:87px;left:0;right:0;background:white;padding:32px var(--pad) 44px;border-bottom:1px solid var(--line);box-shadow:0 18px 28px #00000008}
.mega-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:23px;margin-bottom:30px;border-bottom:1px solid var(--line);font-size:15px;color:var(--gray)}
.mega-heading .text-link{color:var(--ink)}
.mega-groups{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.menu-group .eyebrow{font-size:12px;color:var(--gray);margin-bottom:12px}
.menu-group>a{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:20px;line-height:1.35;padding:14px 0;border-bottom:1px solid #e9e9e9}
.menu-group>a:hover{color:#555}.menu-group>a svg{width:16px;transition:transform .2s var(--ease)}.menu-group>a:hover svg{transform:translate(3px,-3px)}
.nav-backdrop{display:none;position:fixed;inset:88px 0 0;background:#00000020;z-index:40;backdrop-filter:blur(3px)}
.services-open .nav-backdrop{display:block}
@media(prefers-reduced-motion:no-preference){.services-menu[open] .mega-panel{animation:panel-in .22s var(--ease) both}}
@keyframes panel-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.hero{padding-top:130px;gap:52px}.hero h1{font-size:clamp(56px,6.65vw,106px);letter-spacing:-.045em}.hero-copy .eyebrow{font-size:12px}.hero-summary{color:#555;max-width:36ch}.hero-bottom{margin-top:0}
.hero-visual img{background:#f5f5f5}.hero-visual .photo-note{padding-bottom:0}.intro{padding-top:72px;padding-bottom:72px}.intro .lead{font-size:clamp(27px,3vw,42px)}
.page-hero{padding-top:152px;padding-bottom:58px}.page-hero h1{letter-spacing:-.045em}.page-intro .lead{color:#555}.page-nav{margin-top:42px;gap:12px;display:flex;flex-wrap:wrap}
.page-nav a{display:inline-flex;align-items:center;min-height:46px;border:1px solid var(--line);border-radius:28px;padding:11px 20px;font-size:13px;transition:background .18s,color .18s}
.page-nav a:hover{background:var(--ink);color:white;border-color:var(--ink)}
.section-head h2{letter-spacing:-.04em}.section-head .lead{color:#555}.section-head{align-items:end}.section-head .section-label{margin-bottom:22px}
.catalog{gap:56px 32px}.catalog-card{border-top:0}.catalog-meta{padding-bottom:14px;font-size:11px;letter-spacing:.07em}.catalog-image{aspect-ratio:1.5;overflow:hidden;background:#f0f0ee}
.catalog-image img{transition:transform .45s var(--ease)}.catalog-text{margin-top:23px}.catalog-text h3{font-size:clamp(24px,2.3vw,34px);letter-spacing:-.035em;line-height:1.15;text-transform:none}
.catalog-text p{margin-top:16px;color:#555;line-height:1.65}.catalog-cta{padding:18px 0;line-height:1.4}.catalog-cta svg{transition:transform .2s var(--ease)}.catalog-card:hover .catalog-cta svg{transform:translate(3px,-3px)}
.digital-section{background:#f7f7f5}.digital-section .catalog-image{background:#eee}.service-uses{gap:8px 14px}.service-uses span{font-size:11px;line-height:1.5;letter-spacing:.025em}
.pill svg,.text-link svg{transition:transform .2s var(--ease)}.pill:hover svg,.text-link:hover svg{transform:translate(2px,-2px)}
.service-hero-copy>p:not(.eyebrow){color:#555}.service-hero-visual img{aspect-ratio:1.12}.service-hero{padding-top:145px}.service-hero h1{text-wrap:balance;letter-spacing:-.04em;overflow-wrap:normal}
.breadcrumb{display:inline-flex;gap:10px;align-items:center;font-size:12px;color:var(--gray);margin-bottom:26px}.breadcrumb:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.detail-item{border-top:1px solid var(--line);padding-top:22px}.detail-item h3{text-transform:none;line-height:1.2;margin-bottom:18px}.detail-item .micro{margin-bottom:30px}
.work-row{transition:background .2s}.work-row:hover{background:#f7f7f5}.work-row h3{font-family:Space,Inter,sans-serif}.work-row p{color:#555}
.contact-band{background:#efefec;border-top:1px solid var(--line)}.contact-band h2{letter-spacing:-.04em}.contact-band .lead{color:#555}
.contact-form{border:1px solid #e4e4e0;background:#f7f7f5}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{background:white}
.footer-end{padding-top:22px}.footer-links a{min-height:28px}.footer-links a:hover{text-decoration:underline;text-underline-offset:4px}
.area-shortcuts{display:grid;grid-template-columns:1fr 1fr;padding:0 var(--pad);border-bottom:1px solid var(--line)}.area-shortcuts>a{display:flex;flex-direction:column;gap:12px;padding:32px 32px 32px 0}.area-shortcuts>a+a{border-left:1px solid var(--line);padding-left:32px}.area-shortcuts .area-title{display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:Space,Inter,sans-serif;font-size:27px;line-height:1.2;letter-spacing:-.03em}.area-shortcuts>a>span:last-child{font-size:13px;color:var(--gray)}.area-shortcuts .micro{font-size:10px;letter-spacing:.05em}.area-shortcuts a:hover .area-title{text-decoration:underline;text-underline-offset:5px}
@media(min-width:1600px){:root{--pad:max(64px,calc((100vw - 1440px)/2))}}
@media(max-width:1100px){.nav{gap:22px}.hero{gap:32px}.hero h1{font-size:clamp(50px,6.5vw,72px)}.menu-group>a{font-size:18px}.catalog-text h3{font-size:27px}.service-hero h1{font-size:clamp(35px,4.2vw,50px)}}
@media(max-width:900px){
 .header{height:auto;min-height:80px;position:relative;flex-wrap:wrap;padding:20px var(--pad)}
 .enhanced .header{height:80px;position:fixed;flex-wrap:nowrap}.menu-toggle{display:none}.enhanced .menu-toggle{display:block}
 .nav{display:flex;position:static;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:16px 0 0;background:white;border:0}
 .enhanced .nav{display:none;position:absolute;top:79px;left:0;right:0;width:auto;max-height:calc(100dvh - 79px);overflow:auto;overscroll-behavior:contain;padding:18px var(--pad) 30px;border-bottom:1px solid var(--line)}
 .enhanced .nav.open{display:flex}.menu-open{overflow:hidden}.nav-link{font-size:16px;padding:16px 0;min-height:52px}.nav-contact{margin:16px 0 0;padding:14px 23px;justify-content:space-between;border:0}.nav-contact:hover{border:0}
 .services-menu>summary{justify-content:space-between;width:100%;border-bottom:1px solid var(--line)}
 .mega-panel{position:static;box-shadow:none;border:0;padding:0 0 16px}.mega-heading{font-size:12px;padding:18px 0;margin-bottom:22px}.mega-heading>span{display:none}.mega-heading .text-link{font-size:13px;padding:6px 0}
 .mega-groups{grid-template-columns:1fr 1fr;gap:28px}.menu-group>a{font-size:16px;min-height:48px;padding:12px 0}.menu-group .eyebrow{font-size:10px;letter-spacing:.05em;margin-bottom:8px}.menu-group>a svg{width:14px}
 .services-open .nav-backdrop{display:none}.current-section{border-color:var(--line)}
 html:not(.enhanced) .hero,html:not(.enhanced) .page-hero,html:not(.enhanced) .service-hero{padding-top:48px}
}
@media(max-width:760px){
 .area-shortcuts{grid-template-columns:1fr}.area-shortcuts>a{padding:24px 0}.area-shortcuts>a+a{border-left:0;border-top:1px solid var(--line);padding-left:0}.area-shortcuts .area-title{font-size:25px}
 .hero{padding-top:112px;gap:32px}.hero h1{font-size:clamp(49px,12.3vw,84px)}.hero-copy{padding-top:8px}.hero .actions{gap:18px}.hero-summary{max-width:38ch}.hero-bottom{margin-top:0;font-size:10px;line-height:1.6}
 .intro{padding-top:50px;padding-bottom:50px}.intro .lead{font-size:28px}.page-hero{padding-top:124px;padding-bottom:40px}.page-hero h1{font-size:clamp(43px,10.5vw,68px)}
 .page-nav{margin-top:30px;gap:10px}.page-nav a{padding:11px 16px;font-size:12px}.section-head{gap:24px;margin-bottom:35px}.section-head h2{font-size:42px}.section-head .lead{font-size:18px}
 .catalog{gap:40px}.catalog-image{aspect-ratio:1.4}.catalog-meta{font-size:10px;padding-bottom:12px}.catalog-text{margin-top:20px}.catalog-text h3{font-size:28px}.catalog-text p{margin-top:12px}.service-uses{margin:18px 0}.catalog-cta{padding:16px 0}
 .service-hero{padding-top:116px;gap:28px}.service-hero h1{font-size:clamp(34px,8.8vw,56px)}.service-hero-visual img{aspect-ratio:1.35}.breadcrumb{margin-bottom:22px}.service-hero-copy .eyebrow{margin-bottom:20px}
 .detail-item .micro{margin-bottom:18px}.contact-band h2{font-size:48px}.footer-logo{margin-top:40px}.production-story{padding-top:40px;padding-bottom:40px}.contact-form{margin:0;padding:24px 18px}
}
@media(max-width:540px){.mega-groups{grid-template-columns:1fr;gap:24px}.mega-heading{margin-bottom:18px}.menu-group>a{font-size:16px}.mega-panel{padding-bottom:6px}.menu-group .eyebrow{font-size:11px}}
@media(max-width:360px){.catalog-text h3{font-size:26px}.section-head h2{font-size:37px}.hero h1{font-size:46px}.page-nav a{font-size:11px;padding:11px 14px}.contact-band h2{font-size:43px}.menu-group>a{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.catalog-card:hover .catalog-image img,.pill:hover svg,.text-link:hover svg,.catalog-card:hover .catalog-cta svg,.menu-group>a:hover svg{transform:none}}

/* Responsive image used as the top section's decorative background. */
.hero-background{display:flex;align-items:center;position:relative;isolation:isolate;margin-top:88px;padding:64px var(--pad) 116px;min-height:740px;height:min(850px,calc(100svh - 88px));background:#eeece8;overflow:hidden}
.hero-background .hero-bg{position:absolute;inset:0 0 65px 28%;z-index:-2;display:block}
.hero-background .hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 55%}
.hero-background:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f8f7f4 0%,#f8f7f4 25%,rgba(248,247,244,.96) 36%,rgba(248,247,244,.64) 49%,rgba(248,247,244,0) 66%)}
.hero-background .hero-copy{padding:0;max-width:600px;width:48%;align-items:flex-start}
.hero-background h1{font-size:clamp(60px,6.5vw,100px);max-width:10ch}
.hero-background .hero-summary{max-width:32ch;color:#333;font-size:18px}
.hero-background .hero-bottom{position:absolute;bottom:0;left:0;right:0;margin:0;background:#fff;min-height:65px;padding:20px var(--pad);font-size:11px}
.hero-background .hero-bottom>:nth-child(2){text-align:center}
@media(max-width:1100px) and (min-width:761px){.hero-background{min-height:660px}.hero-background h1{font-size:64px}.hero-background .hero-summary{font-size:16px}.hero-background .hero-copy{width:53%}.hero-background:before{background:linear-gradient(90deg,#f8f7f4 0%,#f8f7f4 28%,rgba(248,247,244,.9) 43%,rgba(248,247,244,0) 80%)}}
@media(max-width:900px){.hero-background{margin-top:80px}}
@media(max-width:760px){
 .hero-background{display:block;height:auto;min-height:0;margin-top:80px;padding:40px var(--pad) calc(100vw + 100px);background:#f8f7f4}
 .hero-background .hero-copy{width:100%;max-width:540px;padding:0}
 .hero-background h1{font-size:clamp(48px,11.8vw,78px);max-width:12ch}
 .hero-background .hero-summary{font-size:17px;max-width:36ch}
 .hero-background .hero-bg{inset:auto 0 68px;height:100vw;max-height:none}
 .hero-background .hero-bg img{object-fit:cover;object-position:center}
 .hero-background:before{background:linear-gradient(to bottom,#f8f7f4 0%,rgba(248,247,244,0) 70%);top:auto;bottom:calc(100vw - 45px);height:130px}
 .hero-background .hero-bottom{font-size:10px;min-height:68px;grid-template-columns:1fr auto;gap:12px}
 .hero-background .hero-bottom>:nth-child(2){display:block;text-align:right;max-width:14ch}
 .hero-background .hero-bottom>:last-child{display:none}
 html:not(.enhanced) .hero-background{margin-top:0}
}

/* The scene stays pinned only while its paused film is controlled by scroll. */
.home-area .section-head{align-items:end;margin-bottom:44px}
.home-area h2{font-size:clamp(38px,4.5vw,68px);letter-spacing:-.045em}
.home-area .lead{font-size:19px;max-width:34ch}
.home-area-digital{background:#f1f2f0;border-top:1px solid var(--line)}
.home-area .catalog-meta,.home-area .service-uses{display:none}
.home-area .catalog{gap:44px}
.home-area .catalog-text{margin-top:22px}
.area-related{display:flex;align-items:center;flex-wrap:wrap;gap:20px 32px;border-top:1px solid var(--line);margin-top:44px;padding-top:24px;font-size:14px}
.area-related>span{color:#555;margin-right:auto}
.scroll-film .film-scene .hero-copy{max-width:620px}
.scroll-film .film-scene .hero-summary{max-width:34ch}
.scroll-film .film-scene .actions{flex-wrap:wrap;gap:18px}
@media(max-width:760px){.home-area .section-head{gap:22px}.home-area .catalog{gap:36px}.home-area .lead{font-size:17px}.area-related{align-items:flex-start;gap:16px}.area-related>span{width:100%}.scroll-film .film-scene .hero-film{bottom:0}}
.scroll-film{--film-progress:0;background:#b9b3aa;position:relative}
.scroll-film.film-active{height:240svh}
.scroll-film .film-scene{position:relative;top:0;margin:0;min-height:680px;height:100svh;max-height:none;padding:120px var(--pad) 100px;background:#b9b3aa;overflow:hidden}
.scroll-film.film-active .film-scene{position:sticky;min-height:0}
.scroll-film .hero-film{position:absolute;inset:0;z-index:-2}
.hero-film video,.hero-film .film-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center}
.hero-film video{opacity:0}
.film-ready .hero-film video{opacity:1}
.film-ready .film-poster{visibility:hidden}
.scroll-film .film-scene:before{background:linear-gradient(90deg,rgba(237,233,225,.96),rgba(237,233,225,.8) 30%,rgba(237,233,225,0) 62%)}
.scroll-film .hero-copy{width:45%;max-width:560px}
.scroll-film .hero-bottom{background:rgba(244,241,235,.88);backdrop-filter:blur(12px);min-height:60px}
.film-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:rgba(0,0,0,.12)}
.film-progress span{display:block;height:100%;background:#171717;transform-origin:left;transform:scaleX(var(--film-progress))}
@media(max-width:760px){
 .scroll-film .film-scene{display:block;height:100svh;min-height:650px;padding:112px var(--pad) 78px}
 .scroll-film .hero-copy{width:100%;max-width:440px}
 .scroll-film h1{font-size:clamp(40px,9vw,62px);line-height:1;max-width:12ch}
 .scroll-film .eyebrow{font-size:10px;margin-bottom:16px}
 .scroll-film .hero-summary{font-size:14px;line-height:1.5;max-width:36ch;margin-top:16px}
 .scroll-film .actions{margin-top:20px;gap:16px}
 .scroll-film .pill{font-size:12px;padding:10px 16px}
 .scroll-film .text-link{font-size:12px;gap:8px}
 .scroll-film .hero-film{top:40%;bottom:50px}
 .hero-film video,.hero-film .film-poster{object-fit:cover;object-position:73% center}
 .scroll-film .film-scene:before{inset:0;height:auto;background:linear-gradient(#eeeae2 0%,#eeeae2 36%,rgba(238,234,226,0) 60%)}
 .scroll-film .hero-bottom{min-height:50px;padding:12px var(--pad);display:flex;justify-content:space-between;font-size:9px;gap:10px}
 .scroll-film .hero-bottom>span{display:none}
 .scroll-film .hero-bottom>:last-child{display:block}
 .scroll-film .hero-bottom>:nth-child(2){max-width:none;text-align:left}
}
@media(max-height:650px) and (min-width:761px){.scroll-film h1{font-size:48px}.scroll-film .hero-summary{font-size:15px}.scroll-film .film-scene{padding-top:100px}.scroll-film .eyebrow{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.scroll-film.film-active{height:auto}.scroll-film.film-active .film-scene{position:relative}.film-progress{display:none}}

.web-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.web-project{display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid var(--ink);padding:24px 0;gap:18px}
.web-project h3{font-family:Space;font-size:32px;letter-spacing:-.035em}.web-project p{font-size:16px;color:#555;flex:1}.web-project .text-link{margin-top:12px}.web-project:hover h3{text-decoration:underline;text-underline-offset:6px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:760px){.web-project-grid{grid-template-columns:1fr;gap:16px}.web-project{gap:12px}.web-project h3{font-size:28px}}

/* Final editorial refinement: consistent rhythm across every page. */
:root{--line:#deded8;--gray:#61625d;--section:clamp(64px,7vw,104px)}
body{font-size:16px;-webkit-font-smoothing:antialiased}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}
.header{border-bottom:1px solid #e7e7e2;background:rgba(255,255,255,.96)}
.section-label:before{display:none}.section-label{padding-left:0!important;font-size:11px;letter-spacing:.08em;color:#666861}
.page-hero{background:#f5f5f1;border-bottom:1px solid var(--line);padding-bottom:64px}
.page-intro .lead{font-size:20px;line-height:1.6}
.service-hero{gap:clamp(32px,5vw,88px);align-items:center;padding-bottom:72px}
.service-hero-visual{overflow:hidden;border-radius:3px;background:#f3f3ef}
.service-hero-visual img{aspect-ratio:1.08;object-fit:cover}
.service-hero-copy .eyebrow{font-size:11px;letter-spacing:.065em;color:#64665f;margin-bottom:24px}
.service-hero h1{font-size:clamp(38px,4.4vw,68px);line-height:1.03;letter-spacing:-.045em}
.service-hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:43ch}
.breadcrumb{margin-bottom:32px}.service-number{opacity:.6}
.detail-grid{gap:24px}.detail-item{padding:28px;background:#f5f5f1;border:0;border-radius:3px}
.detail-item h3{font-family:Space,Inter,sans-serif;font-size:25px;letter-spacing:-.035em;margin-bottom:16px}
.detail-item p{font-size:16px;line-height:1.7;color:#555850}
.spec-row{padding-top:22px;padding-bottom:22px}.spec-row dd{font-size:clamp(18px,1.8vw,26px);letter-spacing:-.025em}
.start-section{background:#f5f5f1}.start-section .lead{font-size:clamp(20px,2vw,28px);line-height:1.55}
.catalog-image{border-radius:3px}.catalog-text p{max-width:46ch;font-size:16px}
.catalog-meta{color:#666861}.catalog-cta{border-color:#d7d8d1}
.home-area-digital,.digital-section{background:#f3f4ef}
.contact-band{padding-top:80px;padding-bottom:80px;background:#e9ece5}
.contact-band h2{font-size:clamp(44px,6vw,86px);line-height:1.02}
.web-project{padding:28px;background:#f5f5f1;border-top:0;border-radius:3px;transition:background .2s}
.web-project:hover{background:#e9ece5}.web-project h3{font-size:29px}.web-project p{line-height:1.6}
.footer{padding-top:64px;padding-bottom:24px}.footer-grid{gap:36px}.footer-links{gap:12px}.footer-links .eyebrow{font-size:11px;letter-spacing:.06em;color:#686a63}
.footer-logo{margin-top:64px;margin-bottom:40px;max-width:none;width:100%;opacity:1}.footer-logo img{width:100%;height:auto}
.footer-end{font-size:12px}.footer-info .micro{font-size:11px;line-height:1.65}
@media(max-width:900px){.footer-grid{gap:36px 24px}.service-hero h1{font-size:38px}.detail-item{padding:24px 20px}.detail-item h3{font-size:23px}}
@media(max-width:760px){.service-hero{padding-bottom:48px;gap:30px}.service-hero-visual img{aspect-ratio:1.4}.service-hero-copy>p:not(.eyebrow){font-size:17px}.service-hero h1{font-size:clamp(35px,9vw,54px)}.detail-grid{gap:16px}.detail-item{padding:26px}.page-hero{padding-bottom:40px}.page-intro .lead{font-size:18px}.contact-band{padding-top:56px;padding-bottom:56px}.footer{padding-top:44px}.footer-logo{margin-top:40px;margin-bottom:28px}.web-project{padding:24px}.home-area .catalog{gap:36px}}
.page-intro h1{font-size:clamp(44px,5.7vw,86px);line-height:1.06}
@media(max-width:760px){.page-intro h1{font-size:clamp(39px,10vw,64px)}}

/* Photorealistic illustrations complement the documented portfolio. */
.work-visual{padding-bottom:0;padding-top:64px}.work-visual img{width:100%;aspect-ratio:3/2;max-height:660px;object-fit:cover;border-radius:3px;background:#eeede8}.work-visual figcaption{font-size:11px;color:#666861;letter-spacing:.04em;padding-top:12px}.work-visual+.work-case{padding-top:48px}
@media(max-width:760px){.work-visual{padding-top:40px}.work-visual+.work-case{padding-top:32px}}

.jannamico-case{background:#f3f4ef}.case-benefits{padding-left:20px;margin:16px 0 24px}.case-benefits li{margin-bottom:16px;line-height:1.65}.case-benefits strong{font-weight:550;color:#20221e}.case-body .case-note{font-size:13px;color:#62655e;line-height:1.6}

/* Company details and mobile reading rhythm. */
.company-footer{border-top:1px solid var(--line);padding:24px 0;font-size:12px;line-height:1.8;color:#5b5e57}.company-footer p{max-width:none}.company-footer a{text-decoration:underline;text-underline-offset:3px}.company-details{max-width:1100px}.company-details dl{margin:0 0 30px}.company-details dl>div{display:grid;grid-template-columns:1fr 2fr;gap:32px;padding:22px 0;border-bottom:1px solid var(--line)}.company-details dt{color:#62655e}.company-details dd{margin:0;overflow-wrap:anywhere}
@media(max-width:760px){
 :root{--pad:22px;--section:52px}
 body{font-size:16px}.header .brand-logo{width:132px}.header .menu-toggle{min-height:44px;padding:10px 20px}
 .page-hero{padding-top:114px;padding-bottom:34px}.page-intro{gap:24px}.page-intro h1{font-size:clamp(36px,10vw,54px);line-height:1.06}.page-intro .lead{line-height:1.6}
 .page-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:26px}.page-nav a{font-size:11px;min-height:46px;padding:10px 12px;line-height:1.4}
 .service-hero{padding-top:110px;gap:26px;padding-bottom:42px}.service-hero h1{font-size:clamp(34px,9vw,48px)}.service-hero-copy .actions .pill{width:100%;justify-content:space-between}.breadcrumb{min-height:36px;margin-bottom:14px}
 .section-head h2,.home-area h2{font-size:clamp(33px,8.9vw,44px);line-height:1.08}.section-head{gap:20px}.eyebrow{font-size:11px;margin-bottom:18px}
 .work-case{gap:18px}.case-number{font-size:22px}.case-title h2{font-size:clamp(32px,8.8vw,44px);line-height:1.08}.case-body{margin-top:8px}.case-body p,.case-benefits{font-size:16px;line-height:1.7}.case-body .actions .pill{width:100%;justify-content:space-between}.tags{gap:7px}.tag{font-size:10px;line-height:1.5}
 .project-photo,.work-visual{padding-top:28px}.work-visual img{max-height:none;aspect-ratio:3/2}.work-visual+.work-case{padding-top:28px}
 .detail-item{padding:24px}.detail-item h3{font-size:24px}.spec-row{gap:14px}.spec-row dt{font-size:13px}.spec-row dd{font-size:18px}
 .contact-layout{gap:34px}.contact-email{font-size:clamp(19px,5.6vw,28px);overflow-wrap:anywhere}.contact-info a{overflow-wrap:anywhere}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px;min-height:48px;width:100%}
 .footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-info{grid-column:1/-1}.footer-links:last-child{grid-column:1/-1}.footer-links a{display:flex;align-items:center;min-height:40px;font-size:14px;overflow-wrap:anywhere}.footer-links .eyebrow{margin-bottom:6px}.footer-logo{margin-top:30px;margin-bottom:26px}.footer-end{gap:16px;flex-wrap:wrap}.company-footer{font-size:11px;line-height:1.8}.company-footer a{display:inline-block;min-height:32px;padding:5px 0}
 .company-details dl>div{grid-template-columns:1fr;gap:7px;padding:18px 0}.company-details dt{font-size:13px}.company-details dd{font-size:16px}
 .area-related a{min-height:42px;display:inline-flex;align-items:center}.home-area .catalog-text h3{font-size:26px}
}
@media(max-width:360px){:root{--pad:18px}.page-nav{grid-template-columns:1fr}.scroll-film .film-scene{padding-top:106px}.scroll-film h1{font-size:38px}.scroll-film .hero-summary{font-size:14px}}
