
/* ===== FRAVIOX V18 RESPONSIVE / COMPLETE-PAGE HOTFIX =====
   Targets only clipping, directory/support-page completeness and ultra-wide stability. */

/* Never crop glyphs at any browser zoom or display width. */
.fx5-hero__copy,.fx5-hero__copy h1,.fx5-hero__copy h1 em,
.fox-service-hero__copy,.fox-service-hero h1,.fox-rich-hero h1,.fox-about-hero h1,
.fox-insights-hero h1,.fox-tools-hero h1,.fox-article-hero h1{overflow:visible!important}
.fx5-hero__copy h1{font-size:clamp(3.7rem,5.25vw,6.75rem);line-height:.94;letter-spacing:-.052em;max-width:780px;text-wrap:balance;overflow-wrap:normal;word-break:normal;padding:.035em .045em .075em 0}
.fx5-hero__copy h1 em{font-style:normal;display:inline;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding-inline:.025em}
.fx5-hero__grid{grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);gap:clamp(34px,5vw,86px)}
.fx5-hero__copy{min-width:0}.fx5-hero__stage{min-width:0}.fx5-hero-prism img{filter:drop-shadow(0 18px 22px rgba(0,0,0,.18));image-rendering:auto;backface-visibility:hidden}

/* Shared hero typography safety for all inner pages. */
.fox-service-hero h1,.fox-rich-hero h1,.fox-about-hero h1,.fox-insights-hero h1,.fox-tools-hero h1,.fox-article-hero h1{
  max-width:min(100%,980px);line-height:1.0;letter-spacing:-.045em;text-wrap:balance;overflow-wrap:break-word;word-break:normal;padding-bottom:.04em
}

/* Services directory: full, readable and visibly complete even when /services/ is a WordPress Page. */
.fraviox-services-page{background:#fff}
.fraviox-services-directory{padding:96px 0 124px;background:linear-gradient(180deg,#fff,#f7f9fd)}
.fraviox-services-directory__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.48fr);gap:6vw;align-items:end;margin-bottom:42px}
.fraviox-services-directory__head h2{font-size:clamp(2.4rem,4vw,4.6rem);margin:8px 0 0;max-width:850px}
.fraviox-services-directory__head p{color:#667085;max-width:560px}
.fraviox-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.fraviox-service-card{position:relative;min-height:330px;padding:26px;border:1px solid #e4eaf2;border-radius:26px;background:#fff;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 18px 50px rgba(10,17,40,.055);transition:transform .35s cubic-bezier(.16,.84,.22,1),box-shadow .35s,border-color .35s}
.fraviox-service-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 100% 0,rgba(0,82,204,.11),transparent 35%);opacity:.7;pointer-events:none}
.fraviox-service-card:hover{transform:translateY(-6px);border-color:rgba(0,82,204,.28);box-shadow:0 28px 72px rgba(10,17,40,.1)}
.fraviox-service-card__num{position:relative;color:#FF6B00;font-size:10px;font-weight:900;letter-spacing:.15em}.fraviox-service-card__kicker{position:relative;margin-top:12px;color:#667085;font-size:9px;letter-spacing:.12em;text-transform:uppercase;font-weight:850}
.fraviox-service-card h3{position:relative;font-size:clamp(1.4rem,1.7vw,1.9rem);line-height:1.08;margin:54px 0 14px;color:#0A1128}.fraviox-service-card p{position:relative;font-size:14px;line-height:1.65;color:#667085;margin-bottom:24px}.fraviox-service-card__link{position:relative;margin-top:auto;color:#0052CC;font-weight:850;font-size:13px}.fraviox-service-card:hover .fraviox-service-card__link{color:#FF6B00}
.fraviox-services-cta{padding:90px 0;background:#0A1128;color:#fff}.fraviox-services-cta__grid{display:grid;grid-template-columns:1fr auto;gap:34px;align-items:center}.fraviox-services-cta h2{font-size:clamp(2.2rem,3.6vw,4rem);margin:0 0 10px}.fraviox-services-cta p{color:rgba(255,255,255,.62);max-width:760px;margin:0}

/* Work page: never an empty shell, but never invent client proof. */
.fraviox-work-body{padding:96px 0 120px}.fraviox-work-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.5fr);gap:7vw;align-items:start}.fraviox-work-intro h2{font-size:clamp(2.5rem,4vw,4.7rem);margin:0 0 18px}.fraviox-work-intro p{color:#667085}.fraviox-work-principles{display:grid;gap:12px}.fraviox-work-principles div{padding:22px;border:1px solid #e4eaf2;border-radius:18px;background:#f8faff}.fraviox-work-principles b{display:block;color:#0A1128;margin-bottom:6px}.fraviox-work-principles span{font-size:14px;color:#667085}.fraviox-work-links{margin-top:54px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.fraviox-work-links a{padding:26px;border-radius:22px;border:1px solid #e4eaf2;background:#fff;box-shadow:0 16px 45px rgba(10,17,40,.05)}.fraviox-work-links small{display:block;color:#0052CC;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.fraviox-work-links strong{display:block;font-size:1.3rem;margin-top:18px}.fraviox-work-links p{font-size:14px;color:#667085;margin:10px 0 0}

/* Insights page archive and no-post fallback. */
.fraviox-insights-empty{padding:34px;border:1px solid #e4eaf2;border-radius:22px;background:#f7f9fd}.fraviox-insights-empty h2{font-size:2rem}.fraviox-insights-empty p{color:#667085}

/* Tools should remain visibly populated even before JS enhancement. */
.fox-tools-workspace{min-height:420px}.fox-tools-page .fox-tools-hub{display:block}

/* Ultra-wide / browser zoom-out: cap text and composition instead of scaling indefinitely. */
@media(min-width:1600px){
  :root{--shell:min(88vw,1540px)}
  .fx5-hero__copy h1{font-size:clamp(4.6rem,4.9vw,6.7rem);max-width:800px}
  .fx5-hero__grid{grid-template-columns:minmax(560px,.92fr) minmax(560px,1.08fr);gap:70px}
  .fx5-hero__stage{height:660px}.fx5-hero-prism{width:min(39vw,600px)}
}
@media(min-width:2200px){
  :root{--shell:1540px}
  .fx5-hero__copy h1{font-size:6.45rem}.fx5-hero__grid{grid-template-columns:690px 1fr;gap:86px}
  .fox-service-hero h1,.fox-rich-hero h1,.fox-about-hero h1,.fox-insights-hero h1,.fox-tools-hero h1,.fox-article-hero h1{font-size:min(5.9rem,5vw)}
}
@media(max-width:1280px){
  .fx5-hero__copy h1{font-size:clamp(3.45rem,5.7vw,5.4rem);max-width:680px}
  .fx5-hero__grid{grid-template-columns:minmax(0,.95fr) minmax(390px,1.05fr);gap:36px}.fx5-hero__stage{height:590px}
  .fraviox-service-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:980px){
  .fx5-hero{padding-top:118px}.fx5-hero__grid{grid-template-columns:1fr}.fx5-hero__copy{padding-top:10px}.fx5-hero__copy h1{font-size:clamp(3.4rem,9vw,5.7rem);max-width:780px}.fx5-hero__stage{height:min(72vw,560px);margin-top:28px}.fx5-hero-prism{width:min(76vw,560px)}
  .fraviox-service-grid{grid-template-columns:repeat(2,1fr)}.fraviox-services-directory__head,.fraviox-work-intro{grid-template-columns:1fr}.fraviox-work-links{grid-template-columns:1fr 1fr}.fraviox-services-cta__grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  .fx5-hero{padding:104px 0 62px;min-height:auto}.fx5-hero__copy h1{font-size:clamp(2.9rem,14vw,4.6rem);line-height:.96;letter-spacing:-.045em;padding-right:.06em}.fx5-hero__lead{font-size:1rem}.fx5-hero__stage{height:min(98vw,430px);margin-top:18px}.fx5-hero-prism{width:min(92vw,430px)}.fx5-hero-prism__plane{width:150px;min-height:72px;padding:12px 14px}.fx5-hero__footer{display:none}
  .fox-service-hero h1,.fox-rich-hero h1,.fox-about-hero h1,.fox-insights-hero h1,.fox-tools-hero h1,.fox-article-hero h1{font-size:clamp(2.35rem,11.5vw,3.9rem);line-height:1.02;letter-spacing:-.035em}
  .fraviox-services-directory{padding:72px 0 88px}.fraviox-service-grid{grid-template-columns:1fr}.fraviox-service-card{min-height:260px}.fraviox-work-links{grid-template-columns:1fr}
}
@media(max-width:420px){.fx5-hero__copy h1{font-size:clamp(2.65rem,13vw,3.65rem)}.fx5-hero-prism__plane{display:none}.fx5-satellite{font-size:6px;padding:5px 7px}}
