/* GrayCat PI — global styles (enqueued by estar-child) */
*{box-sizing:border-box}
    :root{--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace}
    html{scroll-behavior:smooth}
    /* Base resets are scoped to the GrayCat pages (body.gc-page) and the global
       nav/footer chrome (.gc-chrome) so the existing eStar pages keep their own
       styling until each one is redesigned after launch. */
    .gc-page *,.gc-chrome *{margin:0;padding:0}
    body.gc-page{font-family:var(--sans);background:#101828;-webkit-font-smoothing:antialiased}
    .gc-page a,.gc-chrome a,.gpi-mobilebar a{color:inherit;text-decoration:none}
    .gc-page ul,.gc-chrome ul{list-style:none}
    @keyframes gc-blink{0%,100%{opacity:1}50%{opacity:.25}}
    @media(prefers-reduced-motion:reduce){[style*="gc-blink"]{animation:none!important}}
    .gpi-mobilebar{display:none}
    @media (max-width:820px){
      .gpi-navlinks{display:none !important}
      .gpi-mobilebar{display:flex !important}
      body{padding-bottom:74px}
    }

/* ---- hover states (converted from style-hover) ---- */
[data-h="1"]:hover{background:#a02020 !important}
[data-h="2"]:hover{border-color:rgba(255,255,255,.4) !important}
[data-h="3"]:hover{color:#fff !important}
[data-h="4"]:hover{border-color:rgba(201,64,64,.7) !important}
[data-h="5"]:hover{border-color:rgba(201,64,64,.4) !important}
[data-h="6"]:hover{border-color:#8b1a1a !important}
[data-h="7"]:hover{color:#fafafa !important}
[data-h="8"]:hover{color:#c94040 !important}
[data-h="9"]:hover{color:#c5cbd6 !important}
[data-h="10"]:hover{color:#8b1a1a !important}

/* ---- Contact Form 7 — match GrayCat dark form ---- */
.wpcf7-form{display:flex;flex-direction:column;gap:16px;font-family:var(--sans)}
.wpcf7-form p{margin:0}
.wpcf7-form label{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:#8a93a6;display:block}
.wpcf7-form input[type=text],
.wpcf7-form input[type=email],
.wpcf7-form input[type=tel],
.wpcf7-form input[type=url],
.wpcf7-form textarea,
.wpcf7-form select{width:100%;background:#161f33;border:1px solid rgba(255,255,255,.14);border-radius:4px;color:#e0e0e0;font-size:14px;font-family:var(--sans);padding:13px 14px;min-height:48px;margin-top:7px}
.wpcf7-form textarea{min-height:120px;resize:vertical}
.wpcf7-form input::placeholder,.wpcf7-form textarea::placeholder{color:#6f7889}
.wpcf7-form input:focus,.wpcf7-form textarea:focus,.wpcf7-form select:focus{outline:none;border-color:#8b1a1a}
.wpcf7-form .wpcf7-submit{width:100%;background:#8b1a1a;color:#fff;font-size:15px;font-weight:600;border:none;border-radius:4px;padding:16px;min-height:54px;cursor:pointer;font-family:var(--sans);transition:background .15s}
.wpcf7-form .wpcf7-submit:hover{background:#a02020}
.wpcf7-form .wpcf7-acceptance label{font-family:var(--sans);font-size:13.5px;letter-spacing:0;color:#c5cbd6}
.wpcf7 .wpcf7-response-output{border-radius:4px;font-size:13px;color:#e0e0e0;margin:8px 0 0}

/* ---- eStar child integration: full-bleed page wrapper ---- */
/* Applied to pages using the "GrayCat Page (full-bleed)" template via the
   .gc-fullbleed class on #content (set in header.php). Neutralises eStar's
   .container max-width / padding and flex so section backgrounds bleed
   full-width; the page bodies keep their own inner 1240px centred wrappers. */
.gc-fullbleed{max-width:none!important;padding-left:0!important;padding-right:0!important;display:block!important}
.gc-fullbleed>*{max-width:100%}
