/* YouSee360 site polish (2026-10-22): one spacing, type and alignment system across every page.
   Loaded last on every page by _apply_site_polish.py, so it settles conflicts between the older bundles. */

:root{--polish-nav:80px;--polish-text:#eaf7f0;--polish-body:rgba(234,247,240,.8);--polish-muted:rgba(234,247,240,.66);--polish-line:rgba(255,255,255,.09);--polish-card:rgba(255,255,255,.035);--polish-green:#00ff88;--polish-link:#5dffb0;--polish-measure:68ch}

/* Navigation: Webflow gives each dropdown margin:auto, which soaked up all the free space and left the
   links unevenly spread. Keep one rhythm and centre the group between the logo and the call to action. */
@media(min-width:992px){
  .navigation-bar .navigation-menu{justify-content:flex-start!important}
  .navigation-bar .navigation-menu>.w-dropdown{margin:0 2px!important}
  .navigation-bar .navigation-menu>:first-child{margin-left:auto!important}
  .navigation-bar .navigation-menu>.nav-right{margin-left:auto!important}
}

/* Pages that open with a plain section must clear the fixed navigation bar. */
body.modern-site main>.section.contact-section:first-child{padding-top:calc(var(--polish-nav) + clamp(28px,4vw,56px))!important}
body.contact-refined .contact-item{align-items:flex-start}
body.contact-refined .contact-item h3,body.contact-refined .contact-item .contact-label{text-align:left!important}

/* Footer: five link groups plus the brand. The old four-column grid pushed "Contact" onto a row of its own. */
.ys-footer-v2 .ys-footer-grid{max-width:1240px;grid-template-columns:minmax(200px,1.3fr) repeat(4,minmax(0,1fr)) minmax(200px,1.25fr)!important;gap:44px 28px!important;align-items:start}
.ys-footer-v2 .ys-footer-col h3.footer-col-title{font-size:12.5px!important;color:rgba(234,247,240,.62)!important}
.ys-footer-v2 .ys-footer-col h3.footer-col-title a{display:inline!important;min-height:0!important;padding:0!important;font-size:inherit!important;font-weight:inherit!important;letter-spacing:inherit!important;color:inherit!important;text-transform:inherit!important}
.ys-footer-v2 .ys-footer-col h3.footer-col-title a:hover{color:#fff!important}
.ys-footer-v2 .ys-footer-brand .ys-footer-logo{display:block;width:184px;max-width:100%;height:auto;margin:0 0 18px}
.ys-footer-v2 .ys-footer-brand .tagline{max-width:300px}
.ys-footer-v2 .ys-footer-col>a.ys-footer-more{margin-top:6px;color:var(--polish-link)!important;font-weight:600;font-size:.9rem;white-space:nowrap}
.ys-footer-v2 .ys-lang-badge{display:inline-block;margin-left:4px;padding:0 6px;border:1px solid rgba(255,255,255,.22);border-radius:6px;font-size:11px;line-height:17px;letter-spacing:.06em;color:rgba(234,247,240,.72);vertical-align:1px}
.ys-footer-v2 .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ys-footer-v2 .ys-footer-col>a.ys-footer-more:hover{color:#fff!important}
.ys-footer-v2 .ys-footer-contact-item{display:flex;gap:9px;align-items:baseline;overflow-wrap:break-word}
.ys-footer-v2 .ys-footer-contact-item a{white-space:nowrap}
@media(max-width:1199px){
  .ys-footer-v2 .ys-footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .ys-footer-v2 .ys-footer-brand{grid-column:1/-1}
  .ys-footer-v2 .ys-footer-brand .tagline{max-width:520px}
}
@media(max-width:640px){
  .ys-footer-v2 .ys-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:34px 18px!important}
  .ys-footer-v2 .ys-footer-grid>.ys-footer-col:last-child{grid-column:1/-1}
  .ys-footer-v2 .ys-footer-col a{min-height:40px!important;padding:8px 0!important;font-size:.9375rem}
  .ys-footer-v2 .ys-footer-col>a.ys-footer-more{white-space:normal}
  .ys-footer-v2 .ys-footer-bottom{text-align:center}
}

/* Eyebrows, captions and chips: nothing below a comfortable reading size. */
html body :is(.demo-eyebrow,.tag,.card-category-tag,.service-path-kicker,.explainer-label,.pf-kicker,.label-hint,.badge,.region-tag,.ys-live-tour-badge)[class]{font-size:max(11.5px,.72rem)!important}
html body :is(.hero-demo .demo-scene-label span,.demo-compact .demo-scene-label span,.demo-thumbnail span,.walkthrough-label,.schematic-pin,.pf-use span,.pf-logos small,.pf-hero-foot,.pf-browser-bar,.ws-inline .ws-step,.ws-visual-note,.ws-photo-360 small,.p3-chip,.es3-num,.site-benefit-tags li){font-size:12px!important}
html body :is(.demo-source,.pf-evidence,.pf-web-caption,.pf-channel-caption)[class]{font-size:12.5px!important;line-height:1.6!important}
@media(max-width:767px){html body :is(.section-tag,.eyebrow,.mission-tag)[class]{font-size:12px!important;letter-spacing:.16em!important}}

/* Headings that sit inside cards scale with the card, not with the page. */
body .bento-card h2.apple-heading,body .bento-card>h2{font-size:clamp(1.55rem,2.2vw,2.05rem)!important;line-height:1.14!important;letter-spacing:-.025em!important;margin:12px 0 14px!important;text-wrap:balance}
body .bento-card .bento-title,body .solution-benefit h3{font-size:clamp(1.08rem,1.3vw,1.2rem)!important;line-height:1.3!important;letter-spacing:-.01em!important;margin:16px 0 8px!important}
body .bento-card .bento-description{font-size:1rem!important;line-height:1.68!important;color:var(--polish-body)!important;max-width:none}
body .bento-card .bento-description+.bento-description{margin-top:12px}

/* Multi-line card copy reads left-aligned; centred text stays for one-line stats and section headers. */
body .bento-card:not(.centered):not(#WhyUs .bento-card){text-align:left!important}
body .bento-card:not(.centered):not(#WhyUs .bento-card) :is(h2,h3,p,ul,li,.bento-title,.bento-description){text-align:left!important}
body .bento-card:not(.centered):not(#WhyUs .bento-card) .bento-icon-wrapper{margin-left:0!important;margin-right:auto!important}
body .bento-card:not(#WhyUs .bento-card) .section-tag{margin-left:0}
body .bento-card.centered{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
body .solution-showcase,body .solution-benefit{text-align:left!important}
body .solution-benefit .bento-icon-wrapper{margin:0 0 4px!important}
body .challenge-list{padding-left:0!important;list-style:none!important}
body .challenge-list li{position:relative;padding-left:22px;margin:0 0 10px;text-align:left!important;line-height:1.6}
body .challenge-list li::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--polish-green);box-shadow:0 0 10px rgba(0,255,136,.45)}
body .challenge-list li::marker{content:none}

/* The 12-column bento grid never defined quarter-width cards, so col-3 cards collapsed to one letter per line. */
body .bento-card.col-3{grid-column:span 3}
@media(max-width:991px){body .bento-card.col-3{grid-column:span 6!important}}
@media(max-width:600px){body .bento-card.col-3{grid-column:span 12!important}}

/* Cards whose title links somewhere: the whole card is the target. */
body .bento-card:has(.ys-card-link){position:relative;transition:border-color .2s ease,transform .2s ease}
body .bento-card .ys-card-link{color:inherit!important;text-decoration:none!important}
body .bento-card .ys-card-link::after{content:"";position:absolute;inset:0;border-radius:inherit}
body .bento-card .bento-title:has(.ys-card-link)::after{content:" \2192";color:var(--polish-link)}
body .bento-card:has(.ys-card-link):hover{border-color:rgba(0,255,136,.38)!important;transform:translateY(-2px)}
body .bento-card:has(.ys-card-link:focus-visible){outline:2px solid var(--polish-green);outline-offset:3px}
body .bento-card .ys-card-link:focus-visible{outline:none}

/* "Why us" benefit cards: equal widths and card-sized titles. */
body .benefits-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))!important;gap:20px!important;max-width:1200px;margin-inline:auto}
body .benefit-card{width:auto!important;max-width:none!important;padding:28px 24px!important;text-align:left!important}
body .benefit-card .icon-container{margin:0 0 18px!important}
body .benefit-card h3{font-size:1.2rem!important;line-height:1.3!important;letter-spacing:-.01em!important;margin:0 0 8px!important;text-align:left!important}
body .benefit-card p{font-size:.98rem!important;line-height:1.62!important;color:var(--polish-body)!important;text-align:left!important;max-width:none!important}

/* Service option cards: centre whatever number of cards a page has; copy reads left-aligned like the other cards. */
body .service-options .services-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),300px))!important;justify-content:center!important;gap:20px!important}
body .service-options .modern-service-card,body .service-options .modern-service-card :is(.service-title,.service-description){text-align:left!important}
body .service-options .modern-service-card .service-icon-circle{margin-left:0!important;margin-right:auto!important}

/* Long measures: card copy, fact lists and explainer notes stop short of a comfortable line length. */
body .bento-card .bento-description{max-width:74ch}
body .bento-card .ys-fact-list{max-width:82ch}
html body :is(.explainer-scope,.explainer-static,.explainer-caption)[class]{font-size:13.5px!important;line-height:1.6!important;max-width:88ch}

/* Question cards ("Expert insights", blog FAQs): readable, left-aligned, calmer headings. */
body :is(.seo-faq,.post-faq,.seo-faq-section) .faq-item{padding:22px 24px!important;margin-bottom:14px!important;text-align:left!important}
body :is(.seo-faq,.post-faq,.seo-faq-section) .faq-item h3{font-size:1.125rem!important;line-height:1.4!important;letter-spacing:-.01em!important;margin:0 0 8px!important;color:#7dffbe!important;text-shadow:none!important;text-align:left!important}
body :is(.seo-faq,.post-faq,.seo-faq-section) .faq-item p{font-size:1rem!important;line-height:1.66!important;color:var(--polish-body)!important;text-align:left!important}
body :is(.post-faq,.seo-faq-section)>h2{font-size:clamp(1.5rem,2.2vw,1.85rem)!important;margin-bottom:22px!important}

/* Body copy in centred sections: keep the header centred, set long copy as a left-aligned column. */
body .cs-brief,body .section>.container>div[style*="max-width:7"][style*="auto"]:not([style*="text-align"]){max-width:var(--polish-measure)!important}
body .cs-brief p,body .section>.container>div[style*="max-width:7"][style*="auto"]:not([style*="text-align"])>p{text-align:left!important;font-size:1.0625rem!important;line-height:1.75!important;color:var(--polish-body)!important;margin:0 0 1.05em!important}
body .section-subheading{max-width:62ch;margin-inline:auto}
body .demo-hero .ys-trust-badges{gap:8px}
@media(min-width:1180px){body .demo-hero:not(#Hero) .ys-trust-badges{justify-content:flex-start!important}}

/* "What's included" style cards and info cards: left-aligned copy under left-aligned titles. */
body .ys-includes-item,body .ys-includes-item p{text-align:left!important}
body .ys-contact-card>h3,body .ys-contact-card>p{text-align:left!important}

/* Package cards: a checklist item is one run of text. As a flex row, an <em> inside it split the
   sentence into separate columns ("A plain | not | to answer on what | automate"). */
body .ys-package{text-align:left!important}
body .ys-package .features li{display:block!important;position:relative;padding-left:30px!important;text-align:left!important}
body .ys-package .features li::before{position:absolute!important;left:0;top:.12em}
body .ys-pricing-grid:has(>.ys-package:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,380px))!important;justify-content:center!important}
@media(max-width:820px){body .ys-pricing-grid:has(>.ys-package:nth-child(2):last-child){grid-template-columns:minmax(0,1fr)!important}}

/* Blog articles: a real type scale and a comfortable measure. */
body .blog-post-content{max-width:800px}
body .blog-post-content>p,body .blog-post-content>ul>li,body .blog-post-content>ol>li{font-size:1.0625rem!important;line-height:1.78!important;color:var(--polish-body)!important}
body .blog-post-content>p.lead{font-size:clamp(1.15rem,1.5vw,1.3rem)!important;line-height:1.6!important;color:var(--polish-text)!important}
body .blog-post-content>h2{font-size:clamp(1.6rem,2.4vw,2.05rem)!important;line-height:1.18!important;letter-spacing:-.025em!important;margin:2.1em 0 .55em!important}
body .blog-post-content>h3{font-size:clamp(1.18rem,1.55vw,1.32rem)!important;line-height:1.3!important;letter-spacing:-.01em!important;margin:1.7em 0 .45em!important}
body .blog-post-content>h2+h3{margin-top:.9em!important}
body .blog-post-content :is(p,li) a:not(.ds-btn):not(.share-btn){color:var(--polish-link)!important;text-decoration:underline!important;text-decoration-color:rgba(0,255,136,.45)!important;text-underline-offset:3px;text-decoration-thickness:1px}
body .blog-post-content :is(p,li) a:not(.ds-btn):not(.share-btn):hover{color:#fff!important;text-decoration-color:currentColor!important}
body .blog-post-content .post-cta-box h3{font-size:clamp(1.3rem,2vw,1.6rem)!important}
body .post-meta-top{flex-wrap:wrap;row-gap:8px}
body .post-meta-top>span{white-space:nowrap}

/* Location pages: the stat card no longer stretches into an empty column. */
body .stat-number{line-height:1.05}
body .bento-card.col-12[style*="padding: 40px"] .bento-description,body .bento-card.col-12 .bento-description{max-width:78ch}
body .ys-fact-list li{text-align:left}

/* The guide links that follow the final call to action read as a footnote, not a section. */
body .cta-section+.section{padding-block:8px clamp(40px,5vw,64px)!important}
body .cta-section+.section p{font-size:.95rem;line-height:1.7;color:var(--polish-muted)}
body .cta-section+.section p a{color:var(--polish-link);text-decoration:underline;text-decoration-color:rgba(0,255,136,.4);text-underline-offset:3px}

/* About: consistent section rhythm instead of 300px gaps. */
body .founder-section,body .mission-section,body .values-section,body .about-cta{padding-block:clamp(44px,5.5vw,80px)!important;min-height:0!important;margin:0!important}
body .mission-section+.values-section{padding-top:0!important}
body .values-section+.about-cta{padding-top:clamp(12px,2vw,24px)!important}
body .founder-content{text-align:left}
body .founder-content .founder-name{text-align:left!important}
body .founder-content .founder-title{display:inline-flex!important;width:auto!important;max-width:100%}
body .credential-items a.credential-item{color:inherit;text-decoration:none;transition:border-color .2s,color .2s,background .2s}
body .credential-items a.credential-item:hover{border-color:rgba(0,255,136,.5);color:#fff;background:rgba(0,255,136,.07)}
body .value-desc{font-size:.98rem!important;line-height:1.62!important}

/* Journey: sections size to their content and the hero clears the navigation. */
body .journey-hero{height:auto!important;min-height:min(100svh,880px)!important;padding:calc(var(--polish-nav) + 48px) 20px 96px!important;box-sizing:border-box}
body .journey-hero>canvas{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:0!important}
body .journey-hero>.scroll-indicator-journey{position:absolute!important;left:50%!important;bottom:28px!important;transform:translateX(-50%)!important}
body .journey-section{min-height:0!important;padding:clamp(56px,7vw,104px) clamp(20px,4vw,40px)!important}
body .journey-section-inner{max-width:1200px!important;margin-inline:auto;gap:clamp(32px,5vw,72px)!important}
body .region-info,body .region-name{text-align:left!important}
body .region-name{font-size:clamp(2rem,3.6vw,3rem)!important}
body .viewer-360-content{display:flex;flex-direction:column;align-items:center;gap:14px;padding:0 24px}
body .viewer-label{font-size:.8rem!important;line-height:1.5;max-width:30ch;padding:6px 14px;border-radius:999px;background:rgba(4,10,16,.78);border:1px solid rgba(255,255,255,.08)}
body .viewer-360 .hotspots{z-index:3}

/* Related links block (case studies, locations, about, legal pages): same card language as service pages. */
.ys-related.ys-related--polish{padding-block:clamp(44px,6vw,84px)}
.ys-related--polish .ys-related-inner{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}
.ys-related--polish .ys-related-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px 24px;flex-wrap:wrap;margin-bottom:22px}
.ys-related--polish .ys-related-head h2{margin:0!important}
.ys-related--polish .ys-related-head a{display:inline-flex;align-items:center;min-height:44px;color:var(--polish-link);font-weight:600;text-decoration:none;white-space:nowrap}
.ys-related--polish .ys-related-head a:hover{color:#fff}
.ys-related--polish .ys-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:14px}
.ys-related--polish .ys-related-card{display:flex;align-items:center;gap:14px;min-height:76px}
.ys-related--polish .ys-related-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(24px,3vw,34px)}
.ys-related--polish .ys-related-kicker{display:block;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:#7fe0b4;margin-bottom:3px}

/* Legal pages: a calm document layout with an on-page index. */
body section.ys-legal{padding:calc(var(--polish-nav) + clamp(36px,5vw,64px)) 0 clamp(56px,7vw,96px)!important;min-height:0!important}
body .ys-legal-body section{padding:0!important;margin:0;min-height:0!important}
body .ys-legal-body section+section{margin-top:clamp(26px,3vw,36px)!important;padding-top:clamp(26px,3vw,36px)!important;border-top:1px solid var(--polish-line)}
.ys-legal-wrap{max-width:1120px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}
.ys-legal-head{max-width:760px;margin:0 0 clamp(28px,4vw,44px)}
.ys-legal-eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--polish-green);margin-bottom:12px}
.ys-legal-head h1{font-size:clamp(2.2rem,4.4vw,3.4rem)!important;line-height:1.05!important;letter-spacing:-.035em!important;margin:0 0 14px!important;text-align:left!important;color:#fff;text-shadow:none!important}
.ys-legal-updated{margin:0;color:var(--polish-muted);font-size:.95rem}
.ys-legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}
.ys-legal-toc{position:sticky;top:calc(var(--polish-nav) + 24px);padding:20px 22px;border:1px solid var(--polish-line);border-radius:16px;background:var(--polish-card)}
.ys-legal-toc p{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--polish-muted)}
.ys-legal-toc ol{margin:0;padding:0;list-style:none;counter-reset:toc}
.ys-legal-toc li{counter-increment:toc;margin:0}
.ys-legal-toc a{display:flex;gap:10px;padding:6px 0;font-size:.92rem;line-height:1.4;color:var(--polish-body);text-decoration:none}
.ys-legal-toc a::before{content:counter(toc,decimal-leading-zero);color:#6fd9a8;font-variant-numeric:tabular-nums;font-size:.8rem;padding-top:.12em}
.ys-legal-toc a:hover{color:#fff}
.ys-legal-body{max-width:var(--polish-measure);padding:clamp(24px,3.4vw,44px);border:1px solid var(--polish-line);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015))}
.ys-legal-body section{scroll-margin-top:calc(var(--polish-nav) + 24px)}
.ys-legal-body section+section{margin-top:clamp(26px,3vw,36px);padding-top:clamp(26px,3vw,36px);border-top:1px solid var(--polish-line)}
.ys-legal-body h2{font-size:clamp(1.25rem,1.8vw,1.5rem)!important;line-height:1.3!important;letter-spacing:-.015em!important;margin:0 0 12px!important;color:#fff!important;text-align:left!important;text-shadow:none!important}
.ys-legal-body p,.ys-legal-body li{font-size:1.0125rem;line-height:1.75;color:var(--polish-body);text-align:left}
.ys-legal-body p{margin:0 0 12px}
.ys-legal-body ul{margin:4px 0 14px;padding:0;list-style:none}
.ys-legal-body li{position:relative;padding-left:22px;margin:0 0 8px}
.ys-legal-body li::before{content:"";position:absolute;left:3px;top:.68em;width:6px;height:6px;border-radius:50%;background:var(--polish-green)}
.ys-legal-body strong{color:#fff;font-weight:600}
.ys-legal-body a{color:var(--polish-link);text-decoration:underline;text-decoration-color:rgba(0,255,136,.45);text-underline-offset:3px}
.ys-legal-related{margin-top:clamp(28px,4vw,40px);padding-top:22px;border-top:1px solid var(--polish-line)}
.ys-legal-related p{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--polish-muted)}
.ys-legal-related ul{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.ys-legal-related li{padding:0;margin:0}
.ys-legal-related li::before{content:none}
.ys-legal-related a{display:inline-flex;align-items:center;min-height:42px;padding:8px 16px;border:1px solid rgba(0,255,136,.28);border-radius:999px;background:rgba(0,255,136,.06);color:#dfffee;text-decoration:none;font-size:.94rem}
.ys-legal-related a:hover{border-color:rgba(0,255,136,.6);color:#fff}
@media(max-width:900px){
  .ys-legal-layout{grid-template-columns:1fr}
  .ys-legal-toc{position:static}
  .ys-legal-toc ol{columns:2;column-gap:20px}
  .ys-legal-toc li{break-inside:avoid}
}
@media(max-width:480px){.ys-legal-toc ol{columns:1}.ys-legal-body{padding:22px 18px;border-radius:16px}}

/* Maps & SEO hero mock-up: on narrow screens the status chips hang below the card, so the caption must clear them. */
@media(max-width:860px){html body .hero-section .seo-note{margin-top:38px!important}}

/* Stat rows (Spanish About): three even cells instead of two plus an orphan. */
body .stats-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;max-width:980px;margin-inline:auto}
body .stats-grid .stat-item{min-width:0!important;width:auto!important}
body .stats-grid .stat-number{font-size:clamp(2.4rem,4.4vw,3.6rem)!important;line-height:1.05!important}
@media(max-width:700px){body .stats-grid{grid-template-columns:minmax(0,1fr)!important;max-width:420px}}

/* WebAR page: three portals per row (six cards, two even rows), buttons that wrap instead of spilling out of the
   card, and "View in your room" kept hidden where ar-portal.js hides it (button styles were overriding [hidden]). */
.portal-portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:1023px){.portal-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){.portal-portfolio-grid{grid-template-columns:minmax(0,1fr)!important}}
.portal-card-actions{flex-wrap:wrap!important;justify-content:flex-start!important}
.portal-card-actions>*{white-space:nowrap}
.btn-view-room[hidden]{display:none!important}
.portal-file-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:900px){.portal-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.portal-file-grid{grid-template-columns:minmax(0,1fr)!important}}
.portal-file-meta{font-size:12px!important;color:rgba(234,247,240,.7)!important}

/* Stand-alone text links get a full-size touch target. */
body a.back-to-blog,body .contact-quick-links a,body a.hi-all{display:inline-flex;align-items:center;min-height:44px}

/* Small contrast lifts where text sat just under 4.5:1. */
body div[style*="color:rgba(255,255,255,0.45)"][style*="uppercase"],body .v3-tm{color:rgba(234,247,240,.7)!important}
