/*
Theme Name: Immeron IT
Description: Standalone WordPress theme for Immeron IT and ITassist247.
Version: 0.1.2
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: immeron-it
*/
@font-face{font-family:Sora;src:url(assets/sora.ttf) format("truetype");font-display:swap;font-weight:100 900}
:root{color-scheme:dark;--bg:#15171a;--header:#171c20;--ink:#f5f8fb;--muted:#bbc8cf;--accent:#00b8d9;--ice:#76e5f6;--line:#364951;--card:#1c2429;--dark:#0e1518}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 Sora,system-ui,sans-serif}a{color:var(--ice);text-underline-offset:.25em}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--ice);outline-offset:4px}h1,h2,h3,p{margin:0}h1{font-size:clamp(2.4rem,4.05vw,4rem);line-height:1.08;letter-spacing:-.054em}h2{font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.18;letter-spacing:-.039em}h3{font-size:1.14rem;line-height:1.35}p{color:var(--muted)}.wrap{width:min(1328px,calc(100% - 84px));margin-inline:auto}.skip{position:absolute;top:-100px}.skip:focus{top:10px;background:var(--dark);z-index:20;padding:12px}
.preview{background:#0b1013;color:#b9c6cf;font:12px/1.5 ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase}.preview .wrap{padding:9px 0;display:flex;justify-content:space-between;gap:12px}.navshell{background:var(--header);border-bottom:1px solid var(--line)}.navrow{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:24px}.logo{display:inline-flex;background:#f7fafc;border-radius:8px;padding:7px 11px;align-items:center}.logo img{width:186px;height:36px;object-fit:contain;display:block}.nav{display:flex;align-items:center;gap:clamp(14px,2.2vw,34px);font-size:14px}.nav a{text-decoration:none;color:var(--ink)}.nav a:hover,.nav a[aria-current=page],.nav a.program{color:var(--ice)}.nav a[aria-current=page]{text-decoration:underline;text-underline-offset:8px}.menu-button{display:none}
.btn{background:var(--accent);color:#081418;padding:.74rem 1.12rem;border:1px solid transparent;border-radius:8px;font:700 .875rem/1.35 Sora,system-ui,sans-serif;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;min-height:44px}.btn:hover{background:#68dff1;text-decoration:none}.btn.secondary{border-color:var(--line);background:var(--dark);color:var(--ink)}.btn.secondary:hover{border-color:var(--ice)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.hero{background:radial-gradient(ellipse at 90% 50%,#19333a,transparent 56%),#11191d;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:repeating-radial-gradient(circle at 83% 51%,transparent 0 20px,#477d8733 21px 22px,transparent 23px 28px);mask-image:linear-gradient(90deg,transparent 55%,black 92%);pointer-events:none}.hero .wrap{position:relative;padding-block:65px 68px}.hero p{max-width:780px;font-size:1.04rem;margin-top:20px}.split{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:clamp(26px,5vw,76px)}.eyebrow{color:var(--ice);font:500 .78rem/1.45 ui-monospace,monospace;letter-spacing:.09em;text-transform:uppercase;margin-bottom:15px;display:block}.ice{display:block;color:var(--ice)}.feature{background:#f4f9fa;color:var(--bg);border-left:5px solid var(--accent);border-radius:16px;padding:clamp(22px,3vw,39px)}.feature img{display:block;width:min(320px,100%);margin:0 0 20px}.feature p{color:#344952;font-size:.97rem;margin:12px 0 0}.feature a{display:block;color:#086274;font-weight:700;border-top:1px solid #cbdce0;margin-top:22px;padding-top:15px}.section{padding-block:46px}.section p.lead{margin:14px 0 0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:11px;padding:22px}.card p{margin:9px 0 0;font-size:.93rem}.card a{display:inline-block;margin-top:12px;font-size:.91rem;font-weight:650}.card ul{padding-left:1.25rem;margin:12px 0 0;color:var(--muted)}li::marker{color:var(--accent)}.panel{background:#20353b;border:1px solid #375960;border-radius:12px;padding:23px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-block:32px 46px}.panel p{margin-top:6px}.panel .btn{flex-shrink:0}.areas{border-top:1px solid var(--line);padding-block:26px 37px}.areas .grid{margin-top:7px}.areas a{font-weight:650;text-decoration:none}.areas a:hover{text-decoration:underline}footer{background:#101316;border-top:1px solid var(--line);padding:22px 0}.foot{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.foot .logo img{width:150px;height:29px}.footnav{margin-left:auto;display:flex;gap:16px;flex-wrap:wrap}
.formlayout{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(30px,7vw,90px);align-items:start;padding-block:56px}.formlayout p{margin-top:16px}.formlayout .aside{margin-top:30px;border-top:1px solid var(--line);padding-top:23px}.form{background:var(--card);border:1px solid var(--line);border-radius:13px;padding:clamp(18px,4vw,34px);display:grid;grid-template-columns:1fr 1fr;gap:16px}.form h2{grid-column:1/-1;font-size:1.45rem}.form label{display:grid;gap:5px;font-size:.88rem;font-weight:600}.form .wide{grid-column:1/-1}.form input,.form textarea{width:100%;padding:12px;background:#10171b;border:1px solid var(--line);border-radius:7px;color:var(--ink);font:inherit}.form textarea{min-height:105px;resize:vertical}.form .formnote{margin:0;font-size:.81rem;color:var(--muted)}.form .result:not(:empty){padding:12px;border:1px solid var(--accent);border-radius:7px;color:var(--ice)}.textstack{max-width:820px}.textstack h2{margin-top:28px;font-size:1.45rem}.textstack p{margin-top:8px}
@media(max-width:1120px){.header-cta{display:none}}
@media(max-width:800px){.wrap{width:calc(100% - 36px)}.navrow{min-height:72px;flex-wrap:wrap;padding-block:9px;gap:10px}.menu-button{display:inline-flex}.nav{display:none;flex-basis:100%;flex-wrap:wrap;gap:14px 20px;padding:10px 0}.navrow.open .nav{display:flex}.split,.formlayout{grid-template-columns:1fr}.hero .wrap{padding-block:42px}.grid,.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{align-items:flex-start;flex-direction:column}.preview .wrap span:last-child{display:none}.footnav{margin-left:0}}
@media(max-width:510px){.grid,.grid.two,.grid.four,.form{grid-template-columns:1fr}.feature img{max-width:245px}.formlayout{padding-block:36px}.nav .btn{margin-top:4px}}
.wp-block-heading{margin:0}.card .wp-block-heading+p{margin-top:9px}.nav ul,.footnav ul{display:contents;list-style:none;padding:0;margin:0}.nav li,.footnav li{display:block}.nav .current-menu-item>a{color:var(--ice);text-decoration:underline}.immeron-notice{border:1px solid var(--line);border-radius:8px;padding:1rem;color:var(--muted)}.form .btn:disabled{cursor:not-allowed;opacity:.65}.wrap.wp-block-group{margin-inline:auto}.editor-styles-wrapper .wp-block{max-width:1100px}

/* Keep WordPress global flow margins out of the theme grid and flex layouts. */
body .navrow > .menu-button { display: none; }
body #main .wp-block-group.grid > *,
body #main .wp-block-group.split > *,
body #main .wp-block-group.actions > *,
body #main .wp-block-group.panel > * {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}
body #main .wrap.wp-block-group {
    width: min(1328px, calc(100% - 84px));
    max-width: none;
}
@media (max-width: 800px) {
    body .navrow > .menu-button { display: inline-flex; }
    body #main .wrap.wp-block-group { width: calc(100% - 36px); }
}

/* Preserve consistent clearance around the final consultation banner. */
body #main .wp-block-group.panel {
    margin-block-start: 32px !important;
    margin-block-end: 46px !important;
}
/* Keep action links aligned when cards in a row contain different copy lengths. */
body #main .grid > .card {
    display: flex;
    flex-direction: column;
}
body #main .grid > .card > a:last-child {
    margin-block-start: auto !important;
    padding-top: 12px;
}
