/* Rome Tourz base layer (Foundation). Loaded on the front end and inside the Etch canvas.
   TOKEN MAP: every Etch class uses var(--rtd-*, fallback). Change a value here and the whole design follows.
   ACSS root font size is 62.5% (1rem = 10px): never size with rem here, use px. */
:root{
  /* palette: literal values of the original design (ACSS oklch tokens render slightly different colours) */
  --rtd-navy:#0e1a33;
  --rtd-orange:#ff4d12;
  --rtd-line:#e4e8f0;
  --rtd-cool:#f4f6fa;
  --rtd-green:#00a66c;
  --rtd-yellow:#ffc400;
  --rtd-red:#e02d2d;
  --rtd-ink:#37405a;
  --rtd-slate:#5c6880;
  --rtd-orange-dark:#c93500;
  --rtd-orange-soft:#fff0eb;
  --rtd-navy-2:#16244a;
  --rtd-navy-d:#0c1730;
  --rtd-navy-m:#152344;
  --rtd-navy-l:#1c2e5c;
  --rtd-on-navy:#aebbd6;
  --rtd-on-navy-2:#a9b6d1;
  --rtd-white:#fff;
  --rtd-black:#000;
  --rtd-btn-ink:#fff;
  /* fluid sizes (clamp lives in the token, never in a font-size declaration) */
  --rtd-sec:clamp(40px,5vw,56px);
  --rtd-fs-h1:clamp(26px,3.4vw,40px);
  --rtd-fs-h2:clamp(21px,2.4vw,28px);
  --rtd-fs-flash:clamp(20px,2.3vw,26px);
  --rtd-fs-slide:clamp(26px,3.6vw,44px);
  --rtd-fs-pitch:clamp(23px,2.9vw,33px);
  --rtd-fs-post:clamp(27px,4vw,46px);
  --rtd-fs-feat:clamp(24px,3.1vw,36px);
  --rtd-pad-dark:clamp(26px,3.4vw,40px);
  --rtd-pad-offer:clamp(24px,3vw,36px);
  --rtd-pad-pitch:clamp(26px,3.4vw,42px);
}
html{scrollbar-gutter:auto;scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:96px}
html body{margin:0;background:#fff;color:var(--rtd-navy,#0e1a33);font-family:'Manrope',system-ui,-apple-system,sans-serif;font-size:15.5px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
html body :where(h1,h2,h3){margin:0;letter-spacing:-0.03em;line-height:1.15;font-weight:800;text-wrap:balance}
html body :where(h1,h2,h3,h4,h5,h6){color:var(--rtd-navy,#0e1a33)}
:where(img){display:block;max-inline-size:100%}
:where(button,input,select,textarea){font:inherit;color:inherit}
:where(:focus-visible){outline:2px solid var(--rtd-orange,#ff4d12);outline-offset:2px}
body.rt-menu-open{overflow:hidden}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* cookie notice: small, bottom-left, never over the hero CTA */
html body div.rt-consent{position:fixed;inset-block-end:16px;inset-inline:16px auto;z-index:90;display:flex;flex-wrap:nowrap;align-items:center;gap:12px;max-inline-size:min(404px,calc(100vw - 32px));margin:0;padding:10px 12px 10px 14px;border-radius:12px;background:var(--rtd-navy,#0e1a33);color:#e4e8f0;font-size:12.5px;line-height:1.4;box-shadow:0 8px 24px rgba(14,26,51,.35)}
html body div.rt-consent[hidden]{display:none}
html body div.rt-consent .rt-consent__text{margin:0;flex:1 1 auto}
html body div.rt-consent a{color:#ffd1c2;text-decoration:underline;text-underline-offset:2px}
html body div.rt-consent .rt-consent__btn{flex:none;min-block-size:36px;padding:7px 14px;border:0;border-radius:8px;background:var(--rtd-orange,#ff4d12);color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
html body div.rt-consent .rt-consent__btn:hover{background:var(--rtd-orange-dark,#db3b06);color:#fff}
@media (max-width:520px){html body div.rt-consent{inset-block-end:10px;inset-inline:10px;max-inline-size:none;padding:9px 10px 9px 12px;font-size:12px}}

/* admin bar offset for the sticky header */
body.admin-bar .rt-header{inset-block-start:32px}
@media (max-width:782px){body.admin-bar .rt-header{inset-block-start:46px}}

/* Fluent Forms: same fields as .rt-input / .rt-btn */
.fluentform .ff-el-form-control{font-family:inherit;font-size:14.5px;line-height:1.5;padding:12px 13px;border:1px solid var(--rtd-line,#e4e8f0);border-radius:9px;color:var(--rtd-navy,#0e1a33);background:#fff;box-shadow:none}
.fluentform .ff-el-form-control:focus{border-color:var(--rtd-orange,#ff4d12);outline:none;box-shadow:0 0 0 3px rgba(255,77,18,.14)}
.fluentform .ff-el-input--label label{font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--rtd-slate,#5c6880)}
.fluentform .ff-btn-submit{padding:12px 22px!important;border:0!important;border-radius:8px!important;background:var(--rtd-orange,#ff4d12)!important;color:var(--rtd-btn-ink,#fff)!important;font-family:inherit;font-size:15px!important;font-weight:800!important;opacity:1}
.fluentform .ff-btn-submit:hover,.fluentform .ff-btn-submit:focus-visible{background:var(--rtd-orange-dark,#db3b06)!important;color:var(--rtd-btn-ink,#fff)!important}

/* links inside rich text (post content, FAQ answers) */
a:not([class]){color:var(--rtd-orange-dark,#db3b06);text-underline-offset:3px}
a:not([class]):hover{color:var(--rtd-orange,#ff4d12)}

/* QA: ACSS `section{display:flex;gap;padding-inline}` must never leak into our sections (specificity 0,0,4: any class rule still wins) */
html body main section{display:block;gap:0;padding-inline:0}
/* QA: keep the last content clear of the fixed cookie notice (mobile bottom bar) */
@media (max-width:600px){body:has(div.rt-consent:not([hidden])){padding-block-end:76px}}
