/* ROST Studio. Shared visual system for native WordPress blocks and review preview. */
:root{--ink:#142b39;--muted:#536874;--navy:#0f222e;--blue:#0878ac;--cyan:#6bcaf1;--paper:#f5f7f6;--line:#dce4e7;--wide:1240px;--radius:4px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65;background:#fff;color:var(--ink);-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #168cc1;outline-offset:5px}p{margin:0 0 1.3em}h1,h2,h3{font-weight:600;line-height:1.09;letter-spacing:-.045em;margin:0 0 .55em}h1{font-size:clamp(42px,5.5vw,76px)}h2{font-size:clamp(32px,3.7vw,49px)}h3{font-size:25px;line-height:1.22;letter-spacing:-.025em}figure{margin:0}button,input,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}.wp-site-blocks{padding:0}.wp-site-blocks>*{margin-block-start:0}.wp-block-group{margin-block-start:0}.wp-block-image img{width:100%;height:auto}.wp-block-columns{display:flex;gap:40px;margin:0}.wp-block-column{flex:1;min-width:0}.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 25px;background:var(--blue);color:#fff;text-decoration:none;font-size:15px;font-weight:600;border-radius:3px;letter-spacing:0;line-height:1.4;transition:background .2s,transform .2s}.wp-block-button__link:hover{background:#066791;transform:translateY(-1px)}.light-button .wp-block-button__link{background:#fff;color:var(--navy)}.light-button .wp-block-button__link:hover{background:#dff3fc}.wrap{max-width:var(--wide);margin-left:auto;margin-right:auto;padding-left:40px;padding-right:40px}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;line-height:1.5;margin-bottom:22px;color:var(--blue)}.lead{font-size:21px;line-height:1.6;max-width:740px;font-weight:400}.section{padding-top:84px;padding-bottom:84px}.section>h2{margin-bottom:40px}.section+.section{border-top:1px solid var(--line)}.text-link{font-size:15px;font-weight:600;margin-top:24px}.text-link a{padding-bottom:5px}.site-header{background:var(--navy);color:#fff;position:relative;z-index:10}.header-inner{height:90px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand img{width:174px;height:76px;object-fit:contain}.primary-nav{display:flex;align-items:center;gap:30px;font-size:14px}.primary-nav a{text-decoration:none;padding:12px 0;border-bottom:2px solid transparent}.primary-nav a[aria-current=page]{border-color:var(--cyan)}.primary-nav .contact-link{border:1px solid #67818e;padding:9px 16px;border-radius:3px}.mobile-nav{display:none}.skip-link{position:absolute;top:-100px;left:16px;background:white;color:#122c3a;padding:10px 15px;z-index:99}.skip-link:focus{top:10px}.home-intro{padding-top:45px;padding-bottom:42px}.home-intro h1{font-size:clamp(37px,4vw,56px);max-width:870px;line-height:1.05;margin:0}.home-intro .eyebrow{margin-bottom:14px}.home-intro h1 br{display:block}.portals{gap:12px;padding:0 12px;align-items:stretch}.portals>.wp-block-column:first-child{flex:1.15}.portal{height:505px;position:relative;overflow:hidden;background:#132f41;border-radius:4px;color:white;isolation:isolate}.portal:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,27,39,.96) 0%,rgba(7,29,43,.52) 65%,rgba(7,29,43,.10) 100%);z-index:-1}.portal-retail:after{background:linear-gradient(0deg,rgba(12,16,21,.97) 0%,rgba(12,16,21,.25) 80%)}.portal-photo{position:absolute;inset:0;z-index:-2}.portal-photo img{height:100%;width:100%;object-fit:cover}.portal-safety .portal-photo img{object-position:65% 35%}.portal-retail .portal-photo img{object-position:60% 40%}.portal-copy{position:absolute;bottom:44px;left:44px;right:40px;max-width:460px}.portal .eyebrow{color:#a9e0f7;margin-bottom:15px}.portal-retail .eyebrow{color:#d9e8ee}.portal h2{font-size:clamp(38px,3.6vw,53px)}.portal p:not(.eyebrow){font-size:16px;max-width:340px;margin-bottom:0;color:#e2edf3}.portal .wp-block-buttons{margin-top:24px}.home-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:26px;padding-bottom:26px;font-size:14px;color:var(--muted)}.home-bottom p{margin:0}.home-bottom .text-link{white-space:nowrap}.feature{min-height:560px;position:relative;overflow:hidden;isolation:isolate;background:#173342;color:white;display:flex;align-items:center}.feature-photo{position:absolute;inset:0;z-index:-2}.feature-photo img{width:100%;height:100%;object-fit:cover;object-position:65% 50%}.feature:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,32,47,.96) 0%,rgba(10,32,47,.82) 36%,rgba(10,32,47,.16) 76%)}.feature-copy{padding:78px 40px;width:100%;max-width:var(--wide);margin:auto}.feature-copy h1{max-width:760px}.feature-copy .lead{max-width:530px;font-size:19px;color:#e0e8ed}.feature-copy .eyebrow{color:#a4dbf3}.feature.retail:after{background:linear-gradient(90deg,rgba(12,17,23,.98) 0%,rgba(12,17,23,.74) 45%,rgba(12,17,23,.03) 82%)}.feature.retail .feature-photo img{object-position:center}.proof-bar{background:#f1f5f6;padding:28px 40px;border-bottom:1px solid var(--line)}.proof-grid{max-width:1160px;margin:auto;gap:30px}.proof-grid .wp-block-column:not(:last-child){border-right:1px solid #cfdadd}.proof-grid p{font-size:13px;margin:0;color:var(--muted)}.proof-grid .proof-main{color:var(--ink);font-size:17px;font-weight:600;margin-bottom:4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 36px}.service-card{padding:28px 0;border-top:1px solid var(--line)}.service-card .eyebrow{margin-bottom:20px;font-size:13px}.service-card h3{font-size:24px}.service-card p:not(.eyebrow){font-size:16px;color:var(--muted);margin:0}.editorial-copy{padding:35px 10px 20px 0;align-self:center}.section>.wp-block-columns{align-items:center}.section .wp-block-image img{border-radius:4px;aspect-ratio:1.35;object-fit:cover}.section .portrait{max-width:330px;margin:auto}.section .portrait img{aspect-ratio:293/440;object-position:center}.page-intro{padding-top:70px;padding-bottom:60px;border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(43px,5.5vw,70px)}.page-intro .lead{color:var(--muted);margin-bottom:0}.cta{background:#eaf3f6;padding:43px 46px;margin-top:22px;margin-bottom:80px;border-radius:4px}.cta h2{font-size:34px;margin-bottom:12px}.cta p{font-size:16px;color:var(--muted);margin:0}.cta .wp-block-columns{align-items:center}.cta .wp-block-column:first-child{flex:2}.cta .wp-block-buttons{margin:0;justify-content:flex-end}.info-card{padding:30px;background:#f2f6f7;min-height:215px}.info-card p{font-size:16px;color:var(--muted)}.info-card a{color:var(--blue);font-weight:600}.step{padding-right:12px}.step .eyebrow{margin-bottom:20px}.step p{color:var(--muted);font-size:16px}.wp-block-details{border-top:1px solid var(--line);padding:20px 0}.wp-block-details:last-child{border-bottom:1px solid var(--line)}.wp-block-details summary{font-size:21px;font-weight:600;min-height:36px;line-height:1.4;padding:4px 0}.wp-block-details[open] summary{margin-bottom:22px}.wp-block-list{padding-left:22px}.wp-block-list li{padding-bottom:8px;font-size:16px}.reference-list{columns:2;column-gap:45px}.reference-list li{break-inside:avoid}.projects{gap:32px}.project-card .eyebrow{margin-top:25px;margin-bottom:10px}.project-card h3 a{text-decoration:none}.project-card h3 a:hover{text-decoration:underline}.project-card img{aspect-ratio:1.5!important}.section .project-wide img{aspect-ratio:auto;max-height:760px;object-fit:contain;background:#f2f5f5}.retail{background:#121a21;color:#fff}.retail .section+.section{border-color:#334049}.retail .eyebrow{color:#92d3ed}.retail .feature-copy .eyebrow{color:#b4dfef}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:50px 30px}.product-card figure{background:#1f2a32;border-radius:4px;overflow:hidden}.product-card figure img{aspect-ratio:1.65;object-fit:cover;transition:transform .4s}.product-card:hover figure img{transform:scale(1.025)}.product-card .eyebrow{font-size:11px;margin-top:24px;margin-bottom:9px}.product-card h3{font-size:32px}.product-card h3 a{text-decoration:none}.product-card p:not(.eyebrow){font-size:16px;color:#c6d1d8}.product-card .text-link{margin-top:16px}.retail .cta{background:#23343f}.retail .cta p{color:#c2d2da}.retail .cta .wp-block-button__link{background:#e8f5fc;color:#173346}.retail .lead{color:#d2dce3}.related-card{padding-top:22px;border-top:1px solid #4b5b66}.related-card h3{font-size:24px}.related-card p{font-size:15px;color:#c2d2da}.contact-card{border-top:1px solid var(--line);padding-top:28px}.contact-card h3{font-size:24px;overflow-wrap:anywhere}.contact-card h3 a{text-decoration:none}.contact-card p{font-size:16px;color:var(--muted)}.site-footer{background:var(--navy);color:#c6d2da;padding:48px 0 22px}.footer-top{display:flex;justify-content:space-between;gap:40px;padding-bottom:35px}.footer-top img{width:164px;height:auto}.footer-top p{font-size:13px;margin:5px 0}.footer-links{display:flex;gap:55px}.footer-links div{display:flex;flex-direction:column;gap:8px;font-size:14px}.footer-links strong{font-size:12px;color:white;text-transform:uppercase;letter-spacing:.13em;font-weight:600;margin-bottom:7px}.footer-links a{text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #3a4b55;padding-top:20px;font-size:12px}.footer-bottom p{margin:0}.site-footer .wp-block-columns{margin-bottom:20px}.site-footer a:hover{color:white}.wp-block-navigation{font-size:14px}.wp-block-navigation__container{gap:25px}.wp-block-site-logo img{max-width:180px}.header-wp{min-height:90px;display:flex;align-items:center;justify-content:space-between}.header-wp>.wp-block-group{width:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.header-wp .wp-block-image img{width:174px;height:76px;object-fit:contain}.header-wp .wp-block-image{margin:0}.wp-block-post-content{margin:0}.wp-block-post-template{list-style:none;padding:0;display:grid;gap:30px;grid-template-columns:repeat(2,minmax(0,1fr))}.wp-block-post-featured-image img{aspect-ratio:1.5;object-fit:cover}.wp-block-post-title{font-size:26px;margin-top:18px}.wp-block-post-title a{text-decoration:none}.wp-block-query-pagination{display:flex;gap:20px;margin-top:30px}
@media(min-width:1400px){.portal{height:540px}.portal-copy{left:60px;bottom:52px}.home-intro{padding-top:52px;padding-bottom:46px}}
@media(max-width:900px){.primary-nav{gap:18px}.brand img{width:155px}.wrap{padding-left:28px;padding-right:28px}.portal-copy{left:28px;right:25px;bottom:32px}.portal{height:510px}.portal h2{font-size:40px}.service-grid{grid-template-columns:repeat(2,1fr)}.feature-copy{padding-left:28px;padding-right:28px}.feature h1{font-size:58px}.footer-links{gap:32px}.cta{margin-left:28px;margin-right:28px;padding:35px}.contact-card h3{font-size:20px}}
@media(max-width:640px){body{font-size:16px}.wrap{padding-left:22px;padding-right:22px}.header-inner{height:74px}.brand img{width:143px;height:63px}.primary-nav{display:none}.mobile-nav{display:block}.mobile-nav summary{font-size:14px;list-style:none;padding:10px 12px;border:1px solid #5e7887;border-radius:3px;min-width:68px;text-align:center}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav[open] summary{background:#315465}.mobile-nav nav{position:absolute;top:74px;left:0;right:0;background:var(--navy);display:flex;flex-direction:column;padding:12px 22px 20px;border-top:1px solid #3d515e;box-shadow:0 15px 22px #07142030}.mobile-nav nav a{padding:10px 2px;text-decoration:none;border-bottom:1px solid #334a58}.home-intro{padding-top:31px;padding-bottom:29px}.home-intro .eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:14px}.home-intro h1{font-size:34px;line-height:1.12;letter-spacing:-.035em}.home-intro h1 br{display:block}.wp-block-columns{flex-direction:column;gap:27px}.portals{gap:10px;padding:0 10px}.portal{height:416px}.portal h2{font-size:38px}.portal-copy{left:22px;right:22px;bottom:28px}.portal .eyebrow{font-size:10px;letter-spacing:.17em;margin-bottom:12px}.portal p:not(.eyebrow){font-size:15px;max-width:300px}.portal .wp-block-buttons{margin-top:20px}.portal-safety .portal-photo img{object-position:72% 20%}.portal-retail .portal-photo img{object-position:65% 50%}.home-bottom{display:block;padding-top:22px;padding-bottom:26px;font-size:13px}.home-bottom .text-link{margin-top:14px}.feature{min-height:560px;align-items:flex-end}.feature-copy{padding:200px 22px 38px}.feature h1{font-size:45px}.feature-copy .lead{font-size:17px;max-width:340px}.feature:after{background:linear-gradient(0deg,rgba(10,32,47,.98) 0%,rgba(10,32,47,.90) 38%,rgba(10,32,47,.12) 100%)}.feature.retail:after{background:linear-gradient(0deg,rgba(12,17,23,.98) 0%,rgba(12,17,23,.92) 38%,rgba(12,17,23,.05) 100%)}.feature-photo img{object-position:65% center}.proof-bar{padding:25px 22px}.proof-grid{gap:18px}.proof-grid .wp-block-column:not(:last-child){border:0;border-bottom:1px solid var(--line);padding-bottom:18px}.proof-grid p{font-size:12px}.proof-grid .proof-main{font-size:16px}.section{padding-top:48px;padding-bottom:48px}.section>h2{margin-bottom:28px}h2{font-size:33px}.service-grid{grid-template-columns:1fr}.service-card{padding:25px 0}.service-card h3{font-size:23px}.service-card .eyebrow{margin-bottom:12px}.page-intro{padding-top:43px;padding-bottom:37px}.page-intro h1{font-size:44px}.lead{font-size:18px}.eyebrow{font-size:11px;margin-bottom:18px}.editorial-copy{padding:8px 0 0}.cta{margin:0 16px 48px;padding:29px 24px}.cta h2{font-size:30px}.cta-columns{gap:22px}.cta .wp-block-buttons{justify-content:flex-start}.cta p{font-size:15px}.info-card{padding:25px;min-height:auto}.reference-list{columns:1}.wp-block-details summary{font-size:19px}.projects{gap:38px}.project-card h3{font-size:25px}.product-grid{grid-template-columns:1fr;gap:36px}.product-card h3{font-size:28px}.product-card .eyebrow{margin-top:21px}.footer-top{flex-direction:column;gap:28px;padding-bottom:28px}.footer-links{gap:45px;flex-wrap:wrap}.footer-links div{font-size:13px}.footer-bottom{flex-direction:column;gap:8px}.site-footer{padding:34px 0 22px}.contact-card h3{font-size:23px}.section .portrait{max-width:260px}.wp-block-post-template{grid-template-columns:1fr}.header-wp{min-height:74px}.header-wp .wp-block-image img{width:143px;height:63px}.wp-block-navigation__responsive-container.is-menu-open{background:var(--navy);color:white;padding:30px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.site-footer .wp-block-image img{max-width:164px}.site-footer .wp-block-heading{font-size:17px;letter-spacing:0}.site-footer .wp-block-column p{font-size:14px;margin-bottom:8px}.single-rost_reference main>h1{font-size:clamp(38px,5vw,65px)}

.home-service{border-top:1px solid var(--line);padding-top:26px}.home-service h3 a{text-decoration:none}.home-service p{font-size:16px;color:var(--muted)}.home-service .text-link a{color:var(--blue)}.home-service .eyebrow{font-size:11px;color:var(--blue)}
/* Revision 03: reference galleries, course publishing and location map. */
.reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.reference-card{min-width:0}.reference-card>a{display:block;text-decoration:none}.reference-card img{width:100%;height:240px;object-fit:cover;display:block}.reference-card h3{font-size:20px;line-height:1.35;margin:18px 0 10px}.reference-pagination{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:35px}.reference-pagination ul{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0}.reference-pagination a,.reference-pagination button,.reference-pagination .current{display:inline-block;padding:10px 15px;border:1px solid #b9cbd4;color:var(--ink);background:white;text-decoration:none;font:inherit}.reference-pagination button:not(:disabled){cursor:pointer}.reference-pagination button:disabled{opacity:.4}.reference-card[hidden]{display:none}.project-gallery{display:grid;gap:25px}.project-gallery img{width:100%;height:auto;max-height:950px;object-fit:contain}.feature .is-style-outline .wp-block-button__link{background:transparent;color:white;border:1px solid #a6cddd}.feature .wp-block-buttons{display:flex;gap:14px;flex-wrap:wrap}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.course-card{border:1px solid var(--line);padding:24px}.course-card>a{color:inherit;text-decoration:none}.course-card img{width:100%;height:250px;object-fit:cover}.course-card h3{font-size:25px;line-height:1.25;margin:20px 0 12px}.course-facts{font-weight:600;font-size:16px;color:var(--ink)}.course-card .course-link{color:var(--blue);text-decoration:underline;font-weight:600}.demo-badge{display:inline-block;margin-bottom:15px;padding:7px 10px;background:#eaf2f7;color:#29465a;font-size:13px;font-weight:600}.course-empty{border-top:1px solid var(--line);padding:20px 0}.course-poster{display:block;max-height:850px;width:auto;max-width:100%;margin-top:25px}.rost-map{width:100%;min-height:430px;background:#eaf1f5}.rost-map iframe{display:block;width:100%;height:430px;border:0}.reference-card a:focus-visible,.reference-pagination button:focus-visible{outline:3px solid #0785bf;outline-offset:5px}.wp-block-post-content>.wp-block-image img{max-height:1000px;width:auto;max-width:100%;object-fit:contain}
@media(max-width:900px){.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.reference-card img{height:210px}.course-grid{grid-template-columns:1fr}}
@media(max-width:600px){.reference-grid{grid-template-columns:1fr}.reference-card img{height:230px}.course-card{padding:18px}.course-card img{height:215px}.reference-pagination{gap:10px}.rost-map,.rost-map iframe{min-height:330px;height:330px}.feature .wp-block-buttons{gap:10px}}

.consulting-hero .feature-photo img{object-position:65% 20%}
@media(max-width:600px){.consulting-hero .feature-photo img{object-position:74% 20%}}

h1.wp-block-post-title{font-size:clamp(38px,5vw,64px);margin-bottom:32px}.single-rost_reference .wp-block-post-content>.wp-block-image{margin-top:24px}.single-rost_reference .wp-block-post-content>.wp-block-image img{max-height:850px;object-fit:contain}

/* Revision 04: consistent baselines in parallel content cards. */
.section>.wp-block-columns{align-items:stretch}
.section>.wp-block-columns>.wp-block-column{align-self:stretch}
.info-card{height:100%}
.reference-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px;padding:0}
.reference-filters a,.reference-filters button{background:#fff;border:1px solid #adbdc6;border-radius:4px;color:#173444;padding:10px 18px;min-height:46px;line-height:1.4;font:inherit;font-size:15px;text-decoration:none;cursor:pointer}
.reference-filters [aria-current=true],.reference-filters [aria-pressed=true]{background:#173444;border-color:#173444;color:#fff}
.reference-sector{display:block;margin:16px 0 8px;color:#0878ac;text-transform:uppercase;letter-spacing:.10em;font-size:11px;font-weight:700;line-height:1.5}
.reference-card h3{margin-top:0}
.reference-sector-note{color:#516977;font-size:15px;margin:0 0 26px;max-width:760px}
@media(min-width:641px){.step h3,.service-card h3,.product-card h3,.related-card h3{min-height:2.44em}.contact-card{display:flex;flex-direction:column;height:100%}.contact-card h3{min-height:2.44em}.contact-card .wp-block-buttons{margin-top:auto;padding-top:10px}}
@media(max-width:640px){.reference-filters{gap:8px}.reference-filters a,.reference-filters button{padding:10px 14px}.step h3,.service-card h3,.product-card h3,.contact-card h3{min-height:0}.reference-sector{margin-left:0;margin-right:0}}

.reference-placeholder{height:240px;display:flex;align-items:center;justify-content:center;background:#edf3f5;color:#627887;font-size:15px}@media(max-width:900px){.reference-placeholder{height:210px}}@media(max-width:600px){.reference-placeholder{height:230px}}

/* Optional advertising: no markup or gap when there is no eligible banner. */
.rost-advertisement{scroll-margin-top:240px;margin-top:0;margin-bottom:56px;padding-top:0;clear:both}
.rost-advertisement-label{font-size:12px;line-height:1.6;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#627887;margin:0 0 9px;overflow-wrap:anywhere}
.rost-advertisement-artwork{border:1px solid #d9e3e8;border-radius:4px;background:#f5f7f8;overflow:hidden}
.rost-banner-link,.rost-advertisement-artwork picture{display:block}
.rost-advertisement-artwork .rost-banner-image{display:block;width:100%;height:auto;max-height:240px;object-fit:contain;margin:auto}
.rost-banner-demo{display:grid;grid-template-columns:minmax(0,1fr) 29%;align-items:stretch;min-height:185px;background:#142c3c;color:#fff}
.rost-banner-demo-copy{padding:24px 32px}.rost-banner-demo-copy strong{display:block;font-size:25px;line-height:1.2;letter-spacing:-.02em;margin-bottom:9px}
.rost-banner-demo-copy p{font-size:14px;margin-bottom:12px;color:#d2e1e8}.rost-banner-demo-copy a{font-size:13px;font-weight:600;color:#74d3f3}
.rost-banner-demo img{width:100%;height:100%;object-fit:cover;min-height:185px;max-height:235px}.rost-banner-demo.shop{background:#232629}.rost-banner-demo.shop .rost-banner-demo-copy a{color:#f7c77c}
@media(max-width:640px){.rost-advertisement{margin-bottom:38px}.rost-advertisement-artwork .rost-banner-image{max-height:280px}.rost-advertisement-artwork picture .rost-banner-image{aspect-ratio:var(--rost-banner-mobile-ratio,auto)}.rost-banner-demo{grid-template-columns:1fr}.rost-banner-demo-copy{padding:24px}.rost-banner-demo-copy strong{font-size:23px}.rost-banner-demo img{height:125px;min-height:0;max-height:none;object-position:50% 50%}}

/* Revision 06: native, editable WhatsApp link next to the phone number. */
.phone-contact-row{display:flex;align-items:center;gap:12px;flex-wrap:nowrap;min-width:0}
.phone-contact-row>h3,.phone-contact-row>p{margin:0;min-height:0}
.phone-contact-row .whatsapp-contact{flex:none;display:flex;list-style:none;padding:0;margin:0;gap:0}
.whatsapp-contact .wp-social-link{margin:0;background:#25d366;color:#fff;border-radius:50%;list-style:none}
.whatsapp-contact .wp-social-link a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;color:inherit;text-decoration:none}
.whatsapp-contact svg{width:24px;height:24px;fill:currentColor}
.contact-card .phone-contact-row{align-items:flex-start;min-height:2.44em;font-size:24px;margin-bottom:.55em}
.site-footer .phone-contact-row{margin-bottom:8px}
.site-footer .phone-contact-row p{margin-bottom:0}
.site-footer .phone-contact-row a{margin-bottom:0}
@media(min-width:641px) and (max-width:960px){.contact-card .phone-contact-row{font-size:20px}}
@media(max-width:640px){.contact-card .phone-contact-row{min-height:44px;font-size:23px;margin-bottom:14px}.feature.retail h1{font-size:39px}}

.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(min-width:641px){.home-service h3{min-height:2.44em}}

/* Revision 07: compact commerce entry, accessible forms and native WordPress parity. */
.header-navigation{display:flex;align-items:center;gap:20px;flex:none}
.header-navigation>.wp-block-navigation{margin:0}
.rost-language-switcher{display:flex;align-items:center;gap:3px;flex:none;font-size:11px;line-height:1.2;letter-spacing:.02em}
.rost-language-switcher a,.rost-language-switcher span{display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:34px;padding:7px 5px;text-decoration:none;border:1px solid transparent;border-radius:3px}
.rost-language-switcher a:hover{background:#294754}
.rost-language-switcher [aria-current],.rost-language-switcher .current{border-color:#7bc9ea;background:#183b4c;color:#fff}
.shop-intro{padding-top:48px;padding-bottom:26px}
.shop-intro .eyebrow{margin-bottom:12px}
.shop-intro h1{font-size:clamp(39px,4.6vw,64px);margin-bottom:20px}
.shop-intro .lead{font-size:18px;max-width:880px;margin:0}
.retail .category-section{padding-top:24px;padding-bottom:58px}
.category-section>h2{font-size:30px;margin-bottom:28px;letter-spacing:-.025em}
.shop-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.shop-category-grid .product-card{display:flex;flex-direction:column;min-width:0;height:100%}
.shop-category-grid .product-card figure img{aspect-ratio:1.4!important;object-fit:cover}
.shop-category-grid .product-card .eyebrow{margin-top:20px;margin-bottom:9px}
.shop-category-grid .product-card h3{font-size:24px;min-height:2.44em}
.shop-category-grid .product-card p:not(.eyebrow):not(.text-link){font-size:15px;line-height:1.6;margin-bottom:18px}
.shop-category-grid .product-card .text-link{margin-top:auto;font-size:14px}
.retail .category-section{border-top:0}
.reference-detail>.wp-block-post-title,.patent-detail>.wp-block-post-title{max-width:1000px;margin-top:0;font-size:clamp(35px,4.5vw,60px)}
.reference-detail .wp-block-post-content,.patent-detail .wp-block-post-content{margin-top:28px}
.reference-detail .wp-block-post-content .wp-block-image img,.patent-detail .wp-block-post-content .wp-block-image img{aspect-ratio:auto;max-height:800px;object-fit:contain;background:#f3f6f7}
.rost-reference-context{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:20px 0 34px;font-size:15px}
.rost-patent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.rost-patent-card,.patent-card{padding:28px;background:#eef4f6;border:1px solid #d6e2e7;border-radius:4px;min-width:0}
.rost-patent-card h3,.patent-card h3{font-size:25px;line-height:1.25}
.rost-patent-card p,.patent-card p{font-size:16px;line-height:1.6}
.contact-form-columns>.wp-block-column:first-child{flex:0.8}
.contact-form-columns>.wp-block-column:last-child{flex:1.2}
.contact-form-section .wp-block-column:first-child>p{max-width:410px;color:var(--muted)}
.rost-contact-form{border:1px solid var(--line);border-radius:4px;padding:32px;background:#f5f8f9}
.rost-contact-form label{display:block;font-weight:600;font-size:15px;line-height:1.5;margin-bottom:8px}
.rost-contact-form input:not([type=checkbox]):not([type=hidden]):not([type=submit]),.rost-contact-form textarea,.rost-contact-form select{display:block;width:100%;max-width:100%;padding:12px 14px;border:1px solid #b6c7d0;border-radius:3px;background:#fff;color:var(--ink);font:inherit;line-height:1.5}
.rost-contact-form input:focus-visible,.rost-contact-form textarea:focus-visible{outline:3px solid #168cc1;outline-offset:2px}
.rost-contact-form textarea{min-height:170px;resize:vertical}
.rost-contact-form input[type=checkbox]{width:18px;height:18px;margin:2px 9px 0 0;flex:none}
.rost-contact-form label:has(input[type=checkbox]){display:flex;font-size:14px;font-weight:400}
.rost-contact-form button,.rost-contact-form input[type=submit]{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 25px;border:0;border-radius:3px;background:var(--blue);color:white;font-size:15px;font-weight:600;line-height:1.4;cursor:pointer}
.rost-contact-form button:hover{background:#066791}
.rost-contact-notice{padding:18px 22px;border:1px solid #9ebec8;background:#e9f4f7;border-radius:3px;line-height:1.55;margin:0 0 24px}
.rost-contact-notice.is-error{background:#fff3f2;border-color:#b86561;color:#6e2926}
.rost-contact-form small{font-size:13px;line-height:1.5;color:var(--muted)}
.rost-form-errors{padding:18px 22px;border:1px solid #b86561;background:#fff3f2;border-radius:3px;color:#6e2926;margin-bottom:24px}
.rost-form-errors ul{margin:8px 0 0;padding-left:20px}
.rost-field-error{display:block;margin-top:7px;color:#8b332c;font-size:14px;font-weight:400}
.rost-form-success{padding:20px 24px;border:1px solid #7ca599;background:#edf8f0;border-radius:3px;color:#204a37;margin-bottom:22px}
.rost-contact-form .rost-form-note,.rost-contact-form .rost-form-privacy{font-size:13px;line-height:1.6;color:var(--muted)}
.rost-contact-form .rost-form-privacy label{font-weight:400}
.rost-contact-form [aria-invalid=true]{border-color:#a23d35!important}
.rost-external-placeholder{padding:28px;background:#eef4f6;border:1px solid var(--line);border-radius:4px}
.rost-external-placeholder p{max-width:680px;font-size:15px}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{padding-block:5px}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{padding-block:8px;line-height:1.4}
.wp-block-navigation__responsive-container.is-menu-open{background:var(--navy);color:white;padding:30px}
@media(min-width:641px) and (max-width:1100px){.header-wp .wp-block-image img{width:145px}.header-navigation{gap:12px}.wp-block-navigation__container{gap:16px}.wp-block-navigation{font-size:13px}.shop-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.shop-category-grid .product-card h3{min-height:0}}
@media(max-width:980px){.header-navigation{gap:10px}.header-wp>.wp-block-group{gap:12px}.header-wp .wp-block-image img{width:132px}.wp-block-navigation__responsive-container:not(.is-menu-open){display:none}.wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}.rost-patent-grid{grid-template-columns:1fr}}
@media(max-width:640px){.header-wp{padding-left:18px;padding-right:18px}.header-wp .wp-block-image img{width:124px;height:63px}.rost-language-switcher{font-size:10px;gap:1px}.rost-language-switcher a,.rost-language-switcher span{min-width:25px;min-height:36px;padding:7px 4px}.feature h1{font-size:clamp(34px,9.7vw,42px);line-height:1.12;letter-spacing:-.035em}.feature h1 br{display:none}.feature-copy{padding-top:185px}.feature-copy h1{max-width:100%;overflow-wrap:normal}.page-intro h1{font-size:clamp(35px,10vw,43px);line-height:1.13}.shop-intro{padding-top:35px;padding-bottom:20px}.shop-intro h1{font-size:39px;margin-bottom:18px}.shop-intro .lead{font-size:17px;line-height:1.6}.retail .category-section{padding-top:20px;padding-bottom:45px}.category-section>h2{font-size:27px;margin-bottom:24px}.shop-category-grid{grid-template-columns:1fr;gap:34px}.shop-category-grid .product-card figure img{aspect-ratio:1.65!important}.shop-category-grid .product-card h3{min-height:0;font-size:27px}.shop-category-grid .product-card .text-link{margin-top:0}.rost-contact-form{padding:24px 20px}.contact-form-columns{gap:25px}.rost-patent-card,.patent-card{padding:24px}.reference-detail>.wp-block-post-title,.patent-detail>.wp-block-post-title{font-size:35px}.rost-reference-context{font-size:14px;gap:12px}}


/* ROST mobile review 2026-10-28: readable menu and usable touch controls. */
@media (max-width:980px) {
  .wp-site-blocks .header-wp .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open {
    background:var(--navy);
    color:#fff;
    padding:28px 24px;
  }
  .header-wp .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    align-items:stretch;
    padding-top:52px;
  }
  .header-wp .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    align-items:stretch;
    gap:8px;
    width:100%;
  }
  .header-wp .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
    width:100%;
    padding:0;
  }
  .header-wp .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    display:flex;
    align-items:center;
    min-height:48px;
    padding:10px 12px;
    font-size:20px;
    line-height:1.4;
    text-align:left;
    border-bottom:1px solid #47606d;
  }
  .header-wp .wp-block-navigation__responsive-container-open,
  .header-wp .wp-block-navigation__responsive-container-close {
    min-width:44px;
    min-height:44px;
    align-items:center;
    justify-content:center;
  }
  .header-wp .wp-block-navigation__responsive-container-close {
    display:flex;
    top:18px;
    right:18px;
  }
}
@media (max-width:360px) {
  .header-wp .wp-block-image img {width:110px;}
  .header-navigation {gap:6px;}
}
