/* v3.8 — clear photography and a tighter reading rhythm. */
body{line-height:1.5}
p{margin-bottom:.8em}
h1,h2,h3,h4{margin-bottom:.55em}
.lead,.hero-lead{line-height:1.5}
.note,.small,.visual-note,.brand-catalog-hint{line-height:1.5}
.section{padding-block:clamp(56px,5vw,84px)}
.eyebrow{margin-bottom:16px}
.small-label{margin-bottom:12px}
.intro,.section-heading,.finder-heading,.standards-heading,.arch-heading{margin-bottom:30px}
.check-list li,.room-features li,#need-list li,#service-scope li,#service-output li{margin-bottom:8px}

/* Keep a localized scrim under the copy; let the room stay visible on the right. */
.hero:after{background:linear-gradient(90deg,#0b2530d9 0%,#0b2530ba 38%,#0b253080 58%,#0b25301a 78%,#0b253008 100%),linear-gradient(0deg,#0b2530a6 0%,transparent 32%)}
.hero-grid-pattern{opacity:.12}
.hero-inner{min-height:610px;padding-top:64px;padding-bottom:42px}
.hero .eyebrow{margin-bottom:20px}
.hero h1{margin-bottom:22px;text-shadow:0 2px 18px #071d284d}
.hero-lead{color:#fff;text-shadow:0 1px 7px #071d28cc}
.hero-trust{color:#fff;text-shadow:0 1px 6px #071d28cc;gap:8px 24px}
.hero-actions{margin:24px 0 22px}
.hero-actions .button-outline{background:#0b25306b}
.hero-aux{padding-bottom:70px}
.hero-controls{color:#fff;text-shadow:0 1px 6px #071d28}
.hero-bottom{margin-bottom:24px}
.hero-bottom>a{padding:20px}

/* The feature photograph has its own unobscured area above the copy. */
.solution-card{padding:30px}
.solution-card .caps{margin-bottom:16px}
.solution-card .large-icon{margin-bottom:16px}
.solution-card p{line-height:1.5}
.card-link{padding-top:14px}
.bento-feature{padding:0;min-height:0;justify-content:flex-start}
.bento-feature>img{position:static;inset:auto;height:clamp(220px,20vw,290px);object-fit:cover;object-position:center;opacity:1;flex-shrink:0}
.bento-feature:after{display:none}
.bento-content{padding:28px 30px;flex:1;background:var(--dark)}
.bento-content .large-icon{float:right;width:34px;height:34px;margin-top:-36px;margin-bottom:0}
.bento-feature h3{font-size:clamp(30px,2.7vw,40px);margin-bottom:16px}
.bento-strip{padding:20px 26px}
.finder-tabs button{padding-block:22px}
.need-panel{padding:30px}
.need-icon{margin-bottom:16px}
.need-prepare{padding:18px;margin:20px 0}

/* Compact cards and prose without reducing their text size. */
.filter-bar{margin:26px 0}
.product-info{padding-block:20px}
.product-brands{min-height:48px;margin-bottom:14px}
.product-info>p,.tier-body p,.tier-body li,.case-heading>p,.insight-columns p,.catalog-intro,.catalog-detail-description{line-height:1.5}
.product-uses{padding-block:14px;line-height:1.5}
.spec-tags{margin-bottom:14px}
.comparison-block{margin-top:56px}
.subheading{margin-bottom:26px}
.comparison-table{line-height:1.5}
.comparison-table th,.comparison-table td{padding:17px 22px}
.service-section{padding-top:60px}
.service-panel{padding:30px}
.service-detail-columns{margin-top:22px}
.platform-section{margin-top:60px}
.platform-card{padding:28px}
.platform-logo{margin-bottom:18px}
.phase-panel{padding:32px;gap:36px}
.migration .subheading{margin-top:52px}
.method-grid>article{padding-block:20px}
.method-grid .icon{margin-bottom:18px}
.example-grid>article{padding:28px}
.migration-cta{padding:32px;margin-top:30px}
.cases-intro{margin-bottom:24px}
.cases-disclosure{margin-bottom:28px}
.case-detail-grid{margin-block:26px}
.case-detail-grid ul,.case-boundary{line-height:1.5}
.case-detail-grid h4{margin-bottom:12px}
.case-detail-grid li{margin-bottom:10px}
.case-delivery{padding-top:38px}
.room-elements{margin-top:48px}
.element-grid{row-gap:20px}
.element-grid article{padding-block:20px}
.element-grid .icon{margin-bottom:14px}
.room-explainer{margin-top:28px;padding:26px}
.fitout-scope{margin-top:34px}
.fitout-scope article>span{margin-bottom:14px}
.standard-card{padding:26px}
.standard-card .icon{margin-bottom:20px}
.process-grid article>span{margin-bottom:24px}
.faq-list summary{padding-block:19px}
.contact-copy address{line-height:1.6}
.consultation-form{padding:30px}
.consultation-form label{margin-bottom:16px}
.footer{padding-top:50px}
.footer-top>div{gap:9px}
.footer-brands{margin-top:30px;padding-top:22px}

/* Below-fold content remains readable even before its entry animation runs. */
.reveal-ready{opacity:1;transform:none;transition:transform .25s,box-shadow .25s,border-color .25s;transition-delay:0ms}
.reveal-ready.is-revealed{animation:content-arrive .4s ease backwards;animation-delay:var(--reveal-delay,0ms)}
@keyframes content-arrive{from{transform:translateY(12px)}to{transform:none}}
@media(max-width:1159px){
 .hero-inner{min-height:570px}
 .hero-aux{padding-bottom:0}
}
@media(max-width:767px){
 .section{padding-block:52px}
 .hero:after{background:linear-gradient(90deg,#0b2530c9 0%,#0b2530a6 62%,#0b25307a 100%),linear-gradient(0deg,#0b2530c4 0%,transparent 35%)}
 .hero-inner{min-height:0;padding-top:42px;padding-bottom:28px}
 .hero h1{margin-bottom:20px}
 .hero-lead{line-height:1.5}
 .hero-trust{gap:9px}
 .hero-actions{margin:22px 0}
 .hero-bottom>a{padding:16px 0}
 .intro,.section-heading,.finder-heading,.standards-heading,.arch-heading{margin-bottom:26px}
 .solution-card{padding:24px}
 .bento-feature{padding:0;min-height:0}
 .bento-feature>img{height:220px}
 .bento-content{padding:24px}
 .bento-strip{padding:20px}
 .need-panel,.service-panel,.platform-card,.phase-panel,.example-grid>article,.standard-card,.consultation-form{padding:24px}
 .phase-panel{gap:22px}
 .comparison-block,.platform-section,.migration .subheading,.room-elements{margin-top:40px}
 .service-section{padding-top:44px}
 .comparison-table th,.comparison-table td{padding:15px 16px}
 .migration-cta{padding:24px}
 .room-explainer{padding:24px}
 .case-delivery{padding-top:30px}
 .footer{padding-top:40px}
}
@media(prefers-reduced-motion:reduce){
 .reveal-ready.is-revealed{animation:none}
}

/* v3.11 — a compact, even set of working-standard cards. */
.standards{padding-block:56px}
.standards-heading{margin-bottom:24px}
.standards-heading h2{font-size:clamp(29px,2.6vw,38px);line-height:1.15}
.standards-heading .lead{font-size:18px;line-height:1.45}
.standards-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.standard-card,.standard-card:first-child,.standard-card:last-child{grid-column:auto;display:grid;grid-template-columns:30px minmax(0,1fr);align-content:start;gap:10px 14px;padding:20px;border-radius:14px}
.standard-card .icon,.standard-card:first-child .icon{width:28px;height:28px;grid-row:1;margin:0}
.standard-card h3,.standard-card:first-child h3{font-size:21px;line-height:1.25;margin:1px 0 0}
.standard-card p,.standard-card:first-child p{grid-column:2;font-size:16px;line-height:1.45;margin:0}
.image-label{font-size:12px;padding:6px 9px;letter-spacing:.06em}
@media(max-width:1000px){.standards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .standards{padding-block:42px}
 .standards-grid{grid-template-columns:1fr;gap:12px}
 .standard-card,.standard-card:first-child,.standard-card:last-child{padding:18px}
 .standard-card h3,.standard-card:first-child h3{font-size:20px}
 .image-label{font-size:12px;padding:5px 8px}
}
