/* =====================================================================
   go.astraignite.com - site stylesheet
   One file for every page. Sections:
     1. Fonts   2. Reset & base   3. Utilities / a11y
     then 30-boxed.css (the CF "boxed" template every page uses)
     and page-specific parts (each page's <body> has class "page-<slug>").
   Trimmed for this site (builder-ai): the pages have no buttons, video,
   modal or forms, so those base sections were dropped.
   ===================================================================== */

/* ---------- 1. Fonts (self-hosted, Latin, variable, swap) ---------- */
@font-face{font-family:"Rokkitt";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/rokkitt.woff2) format("woff2")}
/* Droid Serif (used by the original) is retired; Noto Serif is its direct successor. */
@font-face{font-family:"Noto Serif";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/noto-serif.woff2) format("woff2")}
/* Raleway: only the "AstraIGNITE" wordmark under the logo */
@font-face{font-family:"Raleway";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/raleway.woff2) format("woff2")}
@font-face{font-family:"Noto Serif";font-style:italic;font-weight:100 900;font-display:swap;src:url(../fonts/noto-serif-italic.woff2) format("woff2")}

:root{
  --font-raleway:"Raleway",Helvetica,Arial,sans-serif;
  --font-rokkitt:"Rokkitt",Georgia,serif;
  --font-serif:"Noto Serif","Droid Serif",Georgia,serif;
  --text:#2e2e2e;
  --link:#0b5c97;
  --focus:#1a73e8;
}

/* ---------- 2. Reset & base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;font-family:var(--font-serif);font-size:14px;line-height:1.42857;color:var(--text);background:#fff}
img,svg,video,iframe{max-width:100%}
img{height:auto;border:0;vertical-align:middle}
h1,h2,h3,h4,h5,h6{margin:0;font-weight:inherit;line-height:1.2}
p{margin:0}
p+p{margin-top:1em}
ul,ol{margin:0}
a{color:var(--link)}
a:hover{text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
hr{border:0;border-top:1px solid #ddd;margin:0}
b,strong{font-weight:700}

/* ---------- 3. Utilities / accessibility ---------- */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:8px;top:-60px;z-index:1000;padding:8px 14px;background:#000;color:#fff}
.skip-link:focus{top:8px}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* =====================================================================
   30 - "Boxed" template (builder-ai; based on the go.astraestimating.com
   rebuild of the same CF template, re-measured against these pages)
   Used by every page: grey page, one white centred card with a Rokkitt
   title, "Last Updated" line and divider, Noto Serif (Droid Serif) text,
   Mark Lallemand signature, AstraIGNITE logo, dark copyright footer.
   Markup:
     <body class="boxed page-…">
       <main id="main" class="boxed-card"><div class="boxed-body">
         <h1 class="boxed-title">…</h1> <p class="boxed-updated">…</p> <div class="boxed-divider"></div>
         <div class="legal [legal--doc] [legal--end2]">…</div>
         <div class="boxed-sig">…</div>
         <p class="boxed-logo"><img …></p> [<p class="boxed-wordmark">Astra<b>IGNITE</b></p>]
       </div></main>
       <footer class="boxed-footer">…</footer>
   CF measurements: card 960px max, 20px top padding; side padding 60px
   (80px between 771 and 1170px wide, where CF adds 20px column padding;
   15px on mobile); text 16px/24px (12px/18px at 700px and below).
   ===================================================================== */
.boxed{
  --boxed-pad:60px;
  --boxed-text:rgba(47,47,47,.89);
  background:#f0f0f0;
  font-family:var(--font-serif);
  color:#2f2f2f;
}

/* ---------- Card (CF section: white, shadow20) ---------- */
.boxed-card{display:block;max-width:960px;margin:50px auto 0;padding:20px 0 30px;background:#fff;box-shadow:0 1px 5px rgba(0,0,0,.2)}
.boxed-body{padding-inline:var(--boxed-pad)}

/* ---------- Title block: "Privacy Policy" / "Last Updated on …" ---------- */
.boxed-title{padding-top:30px;font-family:var(--font-rokkitt);font-size:27px;font-weight:700;line-height:31px;color:#2f2f2f}
.boxed-updated{font-family:var(--font-rokkitt);font-size:18px;line-height:21px;color:rgba(47,47,47,.43)}
/* CF divider style 1 / colour 3 / shadow 1 (thin line with a soft shadow) */
.boxed-divider{padding:10px 0}
.boxed-divider::before{content:"";display:block;border-top:1px solid rgba(0,0,0,.1);box-shadow:0 2px 3px rgba(0,0,0,.2)}

/* ---------- Legal / contact text (CF headline block, one <div> per line) ----------
   Every blank line of the original is one line of space (1.5em = one 24px line). */
.legal{margin-top:10px;padding-bottom:1.5em;font-size:16px;line-height:1.5;color:var(--boxed-text);overflow-wrap:break-word}
.legal--end2{padding-bottom:3em}                 /* the CF block ended with two empty lines */
.legal>*{margin:1.5em 0 0;padding:0}
.legal>:first-child,.legal>.is-tight{margin-top:0}
.legal h2,.legal h3,.legal h4{font-size:inherit;line-height:inherit}
.legal h2{font-weight:700}
.legal ul{list-style:none}
.legal li::before,.legal dt::before{content:"\a0\20* "}   /* the original "&nbsp; * " */
.legal dd{margin:0}

/* ---------- Single-column document style (Privacy, Terms, EUSA) ----------
   Readable one-column text; real headings with a line under them instead of
   the original plain-text ---- / ~~~~ / **** rules. */
.legal--doc{font-size:17px;line-height:1.7;color:#3a3a3a}
.legal--doc>*{margin-top:1em}
.legal--doc>:first-child{margin-top:0}
.legal--doc h2,.legal--doc h3{font-family:var(--font-rokkitt);font-weight:700;line-height:1.25;color:#2f2f2f}
.legal--doc h2{position:relative;margin-top:2.2em;padding-bottom:10px;border-bottom:1px solid #e3e3e3;font-size:25px}
.legal--doc h2::after{content:"";position:absolute;left:0;bottom:-2px;width:64px;height:3px;background:#0075b2}
.legal--doc h3{margin-top:1.8em;padding-bottom:6px;border-bottom:1px solid #ececec;font-size:20px}
.legal--doc h4{margin-top:1.4em;font-weight:700;color:#2f2f2f}
.legal--doc>:first-child:is(h2,h3){margin-top:.4em}
.legal--doc :is(h2,h3,h4)+*{margin-top:.75em}
.legal--doc strong{color:#2f2f2f}
.legal--doc ul{padding-left:1.4em;list-style:disc}
.legal--doc li::before,.legal--doc dt::before{content:none}
.legal--doc li+li{margin-top:.3em}
.legal--doc dt{font-weight:700;color:#2f2f2f}
.legal--doc dl+dl{margin-top:.8em}

/* ---------- Signature, logo, wordmark ---------- */
.boxed-sig{padding-top:30px;font-family:var(--font-rokkitt)}
.boxed-sig__name{font-size:27px;font-weight:700;line-height:1.3;color:#2f2f2f}
.boxed-sig p+p{margin-top:0}
.boxed-sig__role{font-size:16px;line-height:18px;color:rgba(47,47,47,.47)}
.boxed-logo{margin-top:30px;text-align:center}
.boxed-logo img{width:150px}
.boxed-wordmark{margin-top:30px;font-family:var(--font-raleway);font-size:32px;font-weight:400;line-height:1.3;text-align:center;color:#2f2f2f}
.boxed-wordmark b{font-weight:700;color:#0075b2}
.boxed-wordmark--close{margin-top:15px}

/* ---------- Footer (CF full-width section, rgba(0,0,0,.71) over the grey) ---------- */
.boxed-footer{margin-top:20px;padding:60px 10px 40px;background:#464646;color:#888;font-size:14px;line-height:1.3;text-align:center}
.boxed-footer p{margin:0}

/* ---------- Responsive (CF: 20px column padding 771-1170px; 15px side padding and 12px text on mobile) ---------- */
@media (min-width:771px) and (max-width:1170px){.boxed{--boxed-pad:80px}}
@media (max-width:770px){.boxed{--boxed-pad:15px}}
@media (max-width:700px){.legal{font-size:12px}.legal--doc{font-size:16px;line-height:1.65}.legal--doc h2{font-size:22px}.legal--doc h3{font-size:19px}}

/* =====================================================================
   60 - 404.html (builder-ai): boxed template, centred message + link list
   ===================================================================== */
.page-404 .boxed-body{max-width:640px;margin-inline:auto;text-align:center}
.page-404 .boxed-title{padding-top:20px}
.page-404 .legal{padding-bottom:0}
.notfound-links ul{margin:24px 0 0;padding:0;list-style:none;font-size:16px;line-height:1.5}
.notfound-links li+li{margin-top:8px}
.notfound-links a{color:var(--link)}
.notfound-links a:hover{text-decoration:none}
@media (max-width:700px){.page-404 .legal{font-size:15px}}
