@font-face{font-family:PlexArabic;src:url('./assets/plex-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:PlexArabic;src:url('./assets/plex-700.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--green:#006d67;--deep:#004b47;--dark:#133b37;--mint:#eef7f3;--mint-strong:#d9efe6;--gold:#a98445;--gold-soft:#fbf5e9;--ink:#243b35;--muted:#62726b;--line:#dce7e0;--surface:#fff;--bg:#f7faf8;--danger:#a13d3d;--danger-soft:#fff1ef;--success:#267b59;--shadow:0 22px 60px rgba(20,77,63,.09);--shadow-soft:0 8px 30px rgba(20,77,63,.065);--radius:20px;--content:1280px;--ribbon-height:38px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:145px}
body{margin:0;min-width:320px;background:var(--bg);color:var(--ink);font-family:PlexArabic,'Segoe UI',Tahoma,sans-serif;font-size:15px;line-height:1.85;text-rendering:optimizeLegibility}
body,button,input,select,textarea{font-family:PlexArabic,'Segoe UI',Tahoma,sans-serif}
button,input,select,textarea{font-size:inherit}
button{cursor:pointer}
a{color:var(--green)}
a:hover{color:var(--deep)}
img,svg{max-width:100%}
img{display:block}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
::selection{background:#cae9d9;color:var(--deep)}
.sr-only,.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip-link{position:absolute;z-index:400;right:18px;top:-90px;padding:9px 16px;border-radius:0 0 12px 12px;background:var(--deep);color:#fff}
.skip-link:focus{top:0;color:#fff}

/* This persistent ribbon distinguishes the simulation from the live service. */
.demo-ribbon{position:sticky;top:0;z-index:220;display:flex;align-items:center;justify-content:center;gap:8px;min-height:var(--ribbon-height);padding:5px 16px;background:#3f3120;color:#fff9ec;text-align:center;font-size:12px;font-weight:700;line-height:1.4;letter-spacing:.005em}
.demo-ribbon::before{content:'●';color:#e3bd73;font-size:10px}
.demo-ribbon a{color:#fff;text-decoration:underline;text-underline-offset:3px}

/* Public header follows the information hierarchy of Saudi public portals. */
.site-header{position:sticky;top:var(--ribbon-height);z-index:180;border-bottom:1px solid #e7ede8;background:rgba(255,255,255,.98);box-shadow:0 5px 25px rgba(24,69,59,.045);backdrop-filter:blur(14px)}
.header-inner{display:flex;align-items:center;gap:clamp(20px,3vw,45px);width:min(var(--content),calc(100% - 48px));min-height:82px;margin:auto}
.brand{display:inline-flex;align-items:center;gap:12px;flex:none;min-width:175px;color:var(--deep);text-decoration:none}
.brand:hover{color:var(--deep)}
.brand img{width:70px;height:66px;object-fit:contain}
.brand strong,.brand b{display:block;color:var(--deep);font-weight:700;font-size:19px;line-height:1.25}
.brand small,.brand span{display:block;color:#66766e;font-size:11px;line-height:1.5}
.main-nav{display:flex;align-items:center;gap:clamp(1px,.7vw,11px);flex:1;min-width:0}
.nav-link,.main-nav a{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px clamp(6px,.7vw,12px);border-radius:9px;color:#40544b;text-decoration:none;white-space:nowrap;font-size:clamp(11px,.9vw,13px);font-weight:700;transition:color .2s,background .2s}
.nav-link:hover,.main-nav a:hover,.nav-link.active,.nav-link[aria-current="page"],.main-nav a[aria-current="page"]{color:var(--green);background:#edf6f1}
.nav-link[aria-current="page"]::after,.main-nav a[aria-current="page"]::after{position:absolute;right:12px;bottom:2px;left:12px;height:2px;border-radius:2px;background:var(--gold);content:''}
.header-actions{display:flex;align-items:center;gap:9px;flex:none}
.brand-note{display:inline-block;max-width:105px;padding:5px 7px;border-radius:6px;background:var(--gold-soft);color:#795c2d!important;font-size:10px!important;font-weight:700;line-height:1.4;text-align:center}
.icon-btn{display:grid;place-items:center;width:39px;height:39px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--green)}
.icon-btn:hover{background:var(--mint);border-color:#a9cfba}
.icon-btn svg{width:18px;height:18px}
.header-actions .btn{min-height:39px;padding:8px 14px;font-size:12px}
.mobile-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--green);font-size:23px;line-height:1}
.mobile-menu{display:none;border-top:1px solid var(--line);background:#fff;box-shadow:var(--shadow-soft)}
.mobile-menu.is-open,.mobile-menu[aria-hidden="false"],.mobile-menu:not([hidden]){display:grid}
.mobile-menu a{padding:11px 16px;border-bottom:1px solid #edf2ee;color:var(--ink);font-weight:700;text-decoration:none}
.mobile-menu a:hover,.mobile-menu a[aria-current="page"]{background:var(--mint);color:var(--green)}

.page-shell{width:min(var(--content),calc(100% - 48px));margin-inline:auto}
main{min-height:60vh}
.section{padding-block:clamp(48px,6vw,82px)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}
.section-head h1,.section-head h2{margin:2px 0 6px;color:var(--deep);font-size:clamp(27px,3.2vw,43px);line-height:1.35}
.section-head p{max-width:680px;margin:0;color:var(--muted)}
.section-head .eyebrow,.eyebrow{display:block;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.03em}
.section-head a{flex:none;font-weight:700;text-decoration:none}

/* Hero uses the official source image as visual context, with readable contrast. */
.hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(390px,49vh,470px);overflow:hidden;background:#074943;color:#fff}
.hero::before{position:absolute;z-index:-2;inset:0;background:url('./assets/official-hero.png') center center/cover no-repeat;content:''}
.hero::after{position:absolute;z-index:-1;inset:0;background:linear-gradient(270deg,rgba(0,47,43,.98) 0%,rgba(0,61,56,.95) 48%,rgba(0,67,62,.48) 81%,rgba(0,63,57,.18) 100%);content:''}
.hero .page-shell{position:relative}
.hero-content{width:min(var(--content),calc(100% - 48px));max-width:none;margin-inline:auto;padding-block:54px 72px}
.hero-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border:1px solid rgba(241,223,184,.42);border-radius:999px;background:rgba(5,58,53,.48);color:#f3dfb1;font-size:12px;font-weight:700;backdrop-filter:blur(7px)}
.hero-title{max-width:730px;margin:16px 0 12px;color:#fff;font-size:clamp(34px,4.1vw,58px);font-weight:700;line-height:1.28;letter-spacing:-.015em}
.hero-title em,.hero-title span{color:#e9c482;font-style:normal}
.hero-lead{max-width:640px;margin:0;color:#e9f5ef;font-size:clamp(15px,1.35vw,18px);line-height:1.75}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.hero-actions .btn{min-height:48px}
.hero-media{position:absolute;inset:0;z-index:-3;pointer-events:none}
.hero-foot{position:absolute;right:max(24px,calc((100vw - var(--content))/2));bottom:25px;left:max(24px,calc((100vw - var(--content))/2));display:flex;justify-content:space-between;gap:12px;color:#e2f3ea;font-size:12px}
.hero-foot a{color:#fff;font-weight:700}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 20px;border:1px solid transparent;border-radius:11px;font-weight:700;line-height:1.5;text-align:center;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s,color .2s}
.btn:hover{transform:translateY(-2px)}
.btn-primary{border-color:var(--green);background:var(--green);color:#fff}
.btn-primary:hover{border-color:var(--deep);background:var(--deep);box-shadow:0 12px 24px rgba(0,80,72,.18);color:#fff}
.btn-outline{border-color:var(--green);background:#fff;color:var(--green)}
.btn-outline:hover{border-color:var(--deep);background:var(--mint);color:var(--deep)}
.btn-light{border-color:rgba(255,255,255,.65);background:rgba(255,255,255,.94);color:var(--deep)}
.btn-light:hover{background:#fff;color:var(--deep)}
.btn-ghost{border-color:rgba(255,255,255,.5);background:transparent;color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.13);color:#fff}
.btn-sm{min-height:36px;padding:6px 12px;font-size:12px}
.btn:disabled,.btn[aria-disabled="true"]{opacity:.52;transform:none;cursor:not-allowed;box-shadow:none}

/* Public portal cards: four visible entrances, one common policy layer. */
.portal-section{position:relative;padding-top:35px;padding-bottom:47px;z-index:2}
.portal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.portal-card{position:relative;display:flex;flex-direction:column;min-height:253px;padding:19px 21px 17px;border:1px solid #d8e9de;border-top:4px solid var(--green);border-radius:18px;background:#fff;box-shadow:var(--shadow);color:var(--ink);text-decoration:none;overflow:hidden;transition:transform .22s,box-shadow .22s,border-color .22s}
.portal-card:nth-child(2){border-top-color:var(--gold)}
.portal-card:nth-child(3){border-top-color:#477d86}
.portal-card:nth-child(4){border-top-color:#6e8b64}
.portal-card::before{position:absolute;inset:auto -28px -65px auto;width:135px;height:135px;border-radius:50%;background:var(--mint);opacity:.7;content:''}
.portal-card:hover,.portal-card:focus-visible{transform:translateY(-6px);border-color:#8ebba5;box-shadow:0 27px 60px rgba(10,75,58,.15);color:var(--ink)}
.portal-card .icon,.portal-card .portal-icon,.portal-card>svg{display:grid;place-items:center;width:74px;height:74px;margin-bottom:13px;padding:12px;border-radius:17px;background:var(--mint);color:var(--green)}
.portal-card .portal-icon svg{width:48px;height:48px;padding:0;background:none;border-radius:0}
.portal-emblem{position:relative;display:grid;place-items:center;width:148px;height:93px;flex:none;margin:0 0 8px;border:1px solid #d7e9de;border-radius:17px;background:linear-gradient(135deg,#fff 25%,#eef8f2 100%);box-shadow:inset 0 1px 0 #fff,0 7px 19px rgba(0,80,68,.07);transition:background .22s,box-shadow .22s,transform .22s}
.portal-emblem img{display:block;width:119px;height:66px;object-fit:contain;margin-inline-end:17px;transition:transform .22s}
.portal-role-icon{position:absolute;bottom:-7px;left:-8px;display:grid;place-items:center;width:52px;height:52px;border:3px solid #fff;border-radius:16px;background:var(--deep);color:#fff;box-shadow:0 7px 19px rgba(0,73,65,.19);transition:transform .22s,background .22s}
.portal-role-icon svg{width:28px;height:28px;max-width:none}
.portal-card:nth-child(2) .portal-role-icon{background:#9b763b}
.portal-card:nth-child(3) .portal-role-icon{background:#477d86}
.portal-card:nth-child(4) .portal-role-icon{background:#66845b}
.portal-card:hover .portal-emblem,.portal-card:focus-visible .portal-emblem{background:#fff;box-shadow:inset 0 1px 0 #fff,0 12px 24px rgba(0,80,68,.12);transform:translateY(-2px)}
.portal-card:hover .portal-role-icon,.portal-card:focus-visible .portal-role-icon{transform:scale(1.08) rotate(-4deg)}
.portal-card:active{transform:translateY(-1px) scale(.99)}
.portal-card:nth-child(2) .icon,.portal-card:nth-child(2) .portal-icon,.portal-card:nth-child(2)>svg{background:var(--gold-soft);color:#8c692d}
.portal-card h2,.portal-card h3{position:relative;margin:0 0 7px;color:var(--deep);font-size:20px;line-height:1.4}
.portal-card p{position:relative;margin:0 0 20px;color:var(--muted);font-size:13px;line-height:1.75}
.portal-card .card-link,.portal-card b,.portal-card strong:last-child{position:relative;margin-top:auto;color:var(--green);font-size:13px;font-weight:700}
.portal-card:hover .card-link,.portal-card:hover b{color:var(--deep)}
.portal-text{position:relative;display:flex;flex:1;flex-direction:column;gap:5px}
.portal-text small{color:var(--gold);font-size:11px;font-weight:700}
.portal-text strong{color:var(--deep)!important;font-size:19px!important;line-height:1.4}
.portal-text em{color:var(--muted);font-size:12px;font-style:normal;line-height:1.6}
.portal-arrow{position:relative;align-self:flex-start;display:grid;place-items:center;width:32px;height:32px;margin-top:8px;border-radius:50%;background:var(--mint);color:var(--green);transition:transform .22s,background .22s}
.portal-card:hover .portal-arrow,.portal-card:focus-visible .portal-arrow{transform:translateX(-4px);background:#d9efe6}
.portal-arrow svg{width:18px;height:18px}

/* Content and catalog cards. */
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.service-card,.detail-card,.action-card,.empty-state{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-soft)}
.service-card{display:flex;flex-direction:column;min-height:195px;padding:22px;transition:border-color .2s,transform .2s,box-shadow .2s}
.service-card:hover{transform:translateY(-3px);border-color:#a8cdb8;box-shadow:var(--shadow)}
.service-card h3,.service-card h2{margin:10px 0 7px;color:var(--deep);font-size:18px;line-height:1.4}
.service-card p{margin:0 0 16px;color:var(--muted);font-size:13px;line-height:1.8}
.service-card .btn,.service-card a:last-child{margin-top:auto;align-self:flex-start}
.service-card .service-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--mint);color:var(--green)}
.service-card .service-icon svg{width:28px;height:28px}
.service-card{color:var(--ink);text-decoration:none}
.service-card:hover{color:var(--ink)}
.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.small-icon{display:grid;place-items:center;width:41px;height:41px;flex:none;border-radius:12px;background:var(--mint);color:var(--green)}
.small-icon svg{width:20px;height:20px}
.text-link{display:inline-flex;align-items:center;gap:5px;color:var(--green);font-size:13px;font-weight:700;text-decoration:none}
.text-link:hover{text-decoration:underline;text-underline-offset:3px}
.status-chip.published{border-color:#c5e6d7;background:#eef8f1;color:#246c4e}
.status-chip.conditional{border-color:#e9deb8;background:#faf5e8;color:#775b2d}
.status-chip.partner{border-color:#d8dfee;background:#f2f5fb;color:#46617b}
.status-chip{display:inline-flex;align-items:center;gap:5px;width:fit-content;padding:4px 10px;border:1px solid #d5e9dc;border-radius:999px;background:var(--mint);color:var(--deep);font-size:11px;font-weight:700;line-height:1.5;white-space:normal}
.status-chip[data-status="proposal"],.status-chip.proposal{border-color:#f1ddb5;background:var(--gold-soft);color:#755524}
.status-chip[data-status="blocked"],.status-chip.blocked,.status-chip.danger{border-color:#efcfca;background:var(--danger-soft);color:var(--danger)}
.status-chip[data-status="success"],.status-chip.success{border-color:#c8e6d6;background:#eaf7ef;color:var(--success)}
.status-chip.neutral{border-color:#e2e9e5;background:#f5f7f6;color:#596a61}
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:22px 0 20px;color:var(--muted);font-size:12px}
.breadcrumbs a{text-decoration:none}
.breadcrumbs a:hover{text-decoration:underline}
.breadcrumbs>*:not(:last-child)::after{content:'‹';display:inline-block;margin-inline-start:8px;color:#9daea3}

/* Auth and workspace layout. */
.auth-shell{width:min(520px,calc(100% - 36px));margin:50px auto 80px}
.auth-page{padding-block:14px 75px}
.auth-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,490px);align-items:center;gap:clamp(30px,6vw,95px);padding-block:35px 70px}
.auth-copy .eyebrow{display:inline-flex;align-items:center;gap:7px}
.auth-copy h1{max-width:600px;margin:13px 0;color:var(--deep);font-size:clamp(34px,4vw,55px);line-height:1.25}
.auth-copy>p{max-width:550px;margin:0;color:var(--muted);font-size:17px}
.auth-points{display:grid;gap:17px;margin-top:38px}
.auth-points>div{display:flex;align-items:flex-start;gap:11px;color:#455c50;font-size:14px}
.auth-points svg{width:22px;height:22px;flex:none;margin-top:2px;color:var(--green)}
.auth-panel{padding:clamp(24px,3vw,36px);border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:var(--shadow)}
.auth-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px}
.auth-icon{display:grid;place-items:center;width:51px;height:51px;border-radius:15px;background:var(--mint);color:var(--green)}
.auth-panel h2{margin:0 0 6px;color:var(--deep);font-size:25px;line-height:1.4}
.auth-panel>p{margin:0 0 22px;color:var(--muted);font-size:13px}
.auth-panel form{display:grid;gap:12px;margin-top:20px}
.auth-panel form small{color:var(--muted);font-size:11px}
.auth-panel form b{color:var(--deep)}
.auth-panel .btn.full{width:100%;margin-top:8px}
.auth-panel .notice{margin-top:21px}
.text-button{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:5px;border:0;background:transparent;color:var(--green);font-size:12px;font-weight:700;text-decoration:none}
.text-button:hover{text-decoration:underline}
.auth-card{padding:clamp(25px,4vw,38px);border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow)}
.auth-card h1{margin:5px 0 8px;color:var(--deep);font-size:29px}
.auth-card p{margin-top:0;color:var(--muted)}
.auth-code{display:flex;gap:8px;direction:ltr;justify-content:center;margin:20px 0}
.auth-code input{width:54px;height:60px;border:1px solid #b9d0c2;border-radius:11px;background:#fff;color:var(--deep);font-size:26px;font-weight:700;text-align:center}
.auth-code input:focus{outline:3px solid rgba(169,132,69,.3);border-color:var(--gold)}
.workspace-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:25px;align-items:start;width:min(var(--content),calc(100% - 48px));margin:25px auto 0;padding-bottom:70px}
.workspace-sidebar{position:sticky;top:calc(var(--ribbon-height) + 105px);display:grid;gap:5px;padding:17px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-soft)}
.workspace-sidebar .sidebar-label{padding:4px 10px;color:var(--gold);font-size:11px;font-weight:700}
.workspace-sidebar a,.workspace-sidebar button{display:flex;align-items:center;gap:9px;width:100%;min-height:41px;padding:9px 12px;border:0;border-radius:10px;background:transparent;color:#4b6054;text-align:right;text-decoration:none;font-size:13px;font-weight:700}
.workspace-sidebar a:hover,.workspace-sidebar button:hover,.workspace-sidebar .active,.workspace-sidebar [aria-current="page"]{background:var(--mint);color:var(--green)}
.workspace-sidebar svg{width:19px;height:19px;flex:none}
.workspace-sidebar nav{display:grid;gap:3px}
.sidebar-role{display:flex;align-items:center;gap:11px;padding:5px 8px 16px;margin-bottom:8px;border-bottom:1px solid var(--line)}
.sidebar-role small{display:block;color:var(--muted);font-size:11px}
.sidebar-role strong{display:block;color:var(--deep);font-size:15px;line-height:1.4}
.sidebar-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--mint);color:var(--green)}
.sidebar-bottom{display:grid;gap:4px;padding-top:9px;margin-top:8px;border-top:1px solid var(--line)}
.sidebar-bottom .text-button{width:100%;padding:8px;color:var(--muted);text-align:right}
.workspace-main{min-width:0}
.workspace-top{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:0 0 19px}
.workspace-top h1{margin:2px 0 0;color:var(--deep);font-size:clamp(26px,2.8vw,35px);line-height:1.35}
.workspace-top p{margin:0;color:var(--muted);font-size:13px}
.workspace-top-actions{display:flex;align-items:center;gap:9px}
.workspace-top-actions .btn{font-size:12px}
.workspace-hero{position:relative;overflow:hidden;padding:28px clamp(22px,3vw,38px);border-radius:22px;background:linear-gradient(117deg,var(--deep),#087c6e);color:#fff;box-shadow:var(--shadow-soft)}
.workspace-hero::after{position:absolute;inset:auto auto -86px -36px;width:220px;height:220px;border:1px solid rgba(255,255,255,.2);border-radius:50%;content:''}
.workspace-hero h1{position:relative;margin:2px 0 5px;color:#fff;font-size:clamp(25px,2.6vw,36px);line-height:1.4}
.workspace-hero p{position:relative;max-width:650px;margin:0;color:#e1f4eb}
.workspace-hero .status-chip{position:relative;border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.14);color:#fff}
.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:17px 0}
.metric-grid>*,.metric-card{min-width:0;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-soft)}
.metric-grid strong,.metric-card strong{display:block;color:var(--deep);font-size:27px;line-height:1.2}
.metric-grid span,.metric-card span,.metric-grid small,.metric-card small{display:block;color:var(--muted);font-size:12px}
.metric-card>svg{width:24px;height:24px;margin-bottom:8px;color:var(--green)}
.action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.action-card{display:flex;flex-direction:column;gap:8px;min-height:145px;padding:21px}
.action-card h3{margin:0;color:var(--deep);font-size:18px}
.action-card p{margin:0;color:var(--muted);font-size:13px}
.action-card .btn,.action-card a:last-child{margin-top:auto;align-self:flex-start}
.action-card:first-child{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:20px;min-height:125px;margin:0 0 16px;border-right:4px solid var(--gold);background:linear-gradient(90deg,#fff,#fbfcf9)}
.action-card:first-child h2{margin:2px 0 5px;color:var(--deep);font-size:21px}
.action-card:first-child p{margin:0 0 7px}
.action-card:first-child .btn{flex:none;margin:0}
.case-ref{display:inline-block;width:fit-content;padding:3px 8px;border-radius:6px;background:#f2f6f2;color:#6d796f;font-size:10px;font-weight:700;direction:ltr;unicode-bidi:isolate}
.dashboard-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.dashboard-columns .detail-card{margin:0 0 24px}
.card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.card-heading h2{margin:0;font-size:18px}
.case-summary{display:grid;grid-template-columns:43px minmax(0,1fr);column-gap:10px;align-items:center}
.case-icon{grid-row:1/4;display:grid;place-items:center;width:41px;height:41px;border-radius:12px;background:var(--mint);color:var(--green)}
.case-summary strong{color:var(--deep);font-size:15px}
.case-summary p{grid-column:2;margin:1px 0 9px;color:var(--muted);font-size:12px}
.case-summary .case-ref{grid-column:2;margin-bottom:10px}
.case-summary .text-link{grid-column:2}
.event-list{display:grid;gap:0}
.event-item{display:flex;gap:11px;padding:11px 0;border-bottom:1px solid #edf2ee}
.event-item:last-child{border:0}
.event-dot{position:relative;width:10px;height:10px;flex:none;margin-top:10px;border:2px solid #fff;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px #d8ebdf}
.event-item strong{display:block;color:var(--ink);font-size:12px;line-height:1.55}
.event-item small{display:block;color:var(--muted);font-size:10px}
.service-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.service-grid.compact .service-card{min-height:175px}
.detail-card{padding:clamp(20px,2.8vw,32px);margin:16px 0}
.detail-card h2,.detail-card h3{margin:0 0 12px;color:var(--deep);line-height:1.4}
.detail-card p{color:var(--muted)}
.detail-card .detail-row{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #edf1ee}
.detail-card .detail-row:last-child{border-bottom:0}
.detail-card .detail-row span{color:var(--muted)}
.detail-card .detail-row strong{color:var(--ink);text-align:left}
.appointment-card{display:flex;align-items:flex-start;gap:20px;padding:28px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:var(--shadow-soft)}
.appointment-card>svg{width:42px;height:42px;flex:none;padding:8px;border-radius:12px;background:var(--mint);color:var(--green)}
.appointment-card h2{margin:2px 0;color:var(--deep);font-size:22px}
.appointment-card strong{color:var(--gold);font-size:14px}
.appointment-card p{margin:7px 0 18px;color:var(--muted)}
.inline-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}
.report-card{display:flex;flex-direction:column;align-items:flex-start;gap:11px;min-height:165px;padding:23px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-soft);color:var(--ink);text-decoration:none}
.report-card:hover{border-color:#a7cdb6;transform:translateY(-3px);color:var(--ink)}
.report-card>svg{color:var(--green)}
.report-card strong{color:var(--deep);font-size:16px}
.report-card span{display:inline-flex;align-items:center;gap:5px;margin-top:auto;color:var(--green);font-size:12px;font-weight:700}
.authority-card{display:flex;gap:18px;align-items:flex-start}
.authority-card>svg{width:50px;height:50px;flex:none;padding:10px;border-radius:15px;background:var(--mint);color:var(--green)}
.authority-card h2{margin:4px 0 5px}
.authority-card .btn{margin-top:10px}
.case-banner{display:flex;align-items:center;gap:13px;padding:16px 19px;margin-bottom:16px;border:1px solid #d3e5d9;border-radius:14px;background:var(--mint)}
.case-banner>svg{flex:none;color:var(--green)}
.case-banner>div{flex:1}
.case-banner strong{color:var(--deep)}
.case-banner p{margin:0;color:var(--muted);font-size:12px}
.page-intro.small{padding-top:5px}
.page-intro.small h1{font-size:clamp(27px,3vw,39px)}
.receipt-list{display:grid;gap:7px}
.receipt-row{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);text-decoration:none}
.receipt-row:hover{border-color:#a3cbb2;background:var(--mint)}
.receipt-row>svg:first-child{color:var(--green)}
.receipt-row>span{flex:1}
.receipt-row strong,.receipt-row small{display:block}
.receipt-row strong{font-size:12px}
.receipt-row small{color:var(--muted);font-size:10px}
.compact-empty{padding:24px}
.segmented{display:flex;flex-wrap:wrap;gap:4px;width:fit-content;max-width:100%;padding:4px;border:1px solid var(--line);border-radius:12px;background:#f0f5f2}
.segmented button,.segmented a{min-height:37px;padding:7px 15px;border:0;border-radius:9px;background:transparent;color:#5c6d64;text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap}
.segmented button:hover,.segmented a:hover,.segmented .active,.segmented [aria-selected="true"],.segmented [aria-current="page"]{background:#fff;color:var(--green);box-shadow:0 2px 8px rgba(16,75,57,.08)}
.stepper{display:flex;align-items:flex-start;gap:0;margin:21px 0 28px;padding:0;list-style:none}
.stepper>span{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;min-height:34px;border-bottom:3px solid #dce8e0;color:#7b8c82;font-size:13px;font-weight:700}
.stepper>span em{font-size:11px;font-style:normal}
.stepper>span.active{border-bottom-color:var(--green);color:var(--green)}
.stepper>span.done{border-bottom-color:#8fc0a7;color:var(--deep)}
.stepper li{position:relative;display:flex;flex:1;align-items:center;gap:8px;min-width:0;color:#75857c;font-size:12px;font-weight:700}
.stepper li:not(:last-child)::after{height:2px;flex:1;margin-inline:10px;background:#dbe7df;content:''}
.stepper li span:first-child,.stepper li .step-num{display:grid;place-items:center;width:27px;height:27px;flex:none;border:1px solid #bed4c6;border-radius:50%;background:#fff;color:var(--green);font-size:12px}
.stepper .active,.stepper [aria-current="step"]{color:var(--deep)}
.stepper .active span:first-child,.stepper [aria-current="step"] span:first-child,.stepper .complete span:first-child{border-color:var(--green);background:var(--green);color:#fff}

/* Forms and feedback states. */
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field{display:flex;flex-direction:column;gap:5px;min-width:0}
.field.full,.form-grid .full{grid-column:1/-1}
.field label,.field>span:first-child{color:var(--ink);font-size:13px;font-weight:700}
.field small,.field .hint{color:var(--muted);font-size:11px;line-height:1.6}
.field input,.field select,.field textarea,.field>input,.field>select,.field>textarea{width:100%;min-height:44px;padding:9px 12px;border:1px solid #cbdcd1;border-radius:10px;outline:none;background:#fff;color:var(--ink);line-height:1.6}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(0,109,103,.12)}
.field input:disabled,.field select:disabled,.field textarea:disabled{background:#f3f6f4;color:#75857c}
.field [aria-invalid="true"]{border-color:var(--danger);box-shadow:0 0 0 3px rgba(161,61,61,.11)}
.field .error{color:var(--danger);font-size:11px;font-weight:700}
.form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.notice{padding:13px 17px;border:1px solid #e7d9b5;border-right:4px solid var(--gold);border-radius:11px;background:var(--gold-soft);color:#654d22;font-size:13px;line-height:1.75}
.notice a{color:inherit;font-weight:700}
.notice.success{border-color:#c7e6d7;border-right-color:var(--success);background:#eff9f2;color:#20593c}
.notice.error,.notice.danger{border-color:#efcfca;border-right-color:var(--danger);background:var(--danger-soft);color:#8d3734}
.notice.info{border-color:#c6e2df;border-right-color:var(--green);background:#eff9f7;color:var(--deep)}
.notice.wide{margin:20px 0}
.notice.slim{margin-block:10px;padding:9px 13px;font-size:11px}
.notice>svg{display:inline-block;width:17px;height:17px;margin-inline-end:5px;vertical-align:middle}
.empty-state{padding:35px 25px;text-align:center}
.empty-state svg{width:46px;height:46px;margin:auto;color:var(--gold)}
.empty-state h2,.empty-state h3{margin:12px 0 4px;color:var(--deep)}
.empty-state p{max-width:500px;margin:0 auto 18px;color:var(--muted)}
.toast{position:fixed;z-index:300;right:50%;bottom:25px;max-width:min(520px,calc(100vw - 30px));padding:13px 19px;border:1px solid #bddbcc;border-radius:12px;background:#fff;color:var(--deep);box-shadow:0 18px 50px rgba(0,50,41,.2);font-size:13px;font-weight:700;transform:translateX(50%)}
.toast[hidden]{display:none}

/* Public navigation content and feature sections. */
.search-section,.home-preview,.editorial-preview{padding-block:42px 68px}
.quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.quick-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
.quick-actions a{display:flex;align-items:center;gap:12px;min-height:70px;padding:15px 17px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow-soft);color:var(--deep);font-size:13px;font-weight:700;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s}
.quick-actions a:hover,.quick-actions a:focus-visible{transform:translateY(-3px);border-color:#9bc9b0;background:#f8fcf9;box-shadow:0 13px 27px rgba(15,84,66,.1)}
.quick-actions svg{width:26px;height:26px;flex:none;color:var(--green)}
.home-service-search{max-width:780px;margin:0 0 20px}
.home-service-search label{display:block;margin-bottom:8px;color:var(--deep);font-size:14px;font-weight:700}
.home-service-search>div{display:flex;gap:9px}
.home-service-search input{flex:1;min-width:0;min-height:50px;padding:10px 15px;border:1px solid #a9c4b3;border-radius:11px;background:#fff;color:var(--ink);font:inherit}
.home-service-search input:focus{outline:3px solid #bbdfcc;outline-offset:2px}
.metric-link{text-decoration:none;color:var(--ink);transition:transform .2s,border-color .2s,box-shadow .2s}
.metric-link:hover,.metric-link:focus-visible{transform:translateY(-3px);border-color:#9bc9b0;box-shadow:var(--shadow)}
.request-status-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:17px 0}
.request-status-tabs a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:55px;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--deep);font-size:13px;font-weight:700;text-decoration:none}
.request-status-tabs a.active,.request-status-tabs a:hover,.request-status-tabs a:focus-visible{border-color:var(--green);background:#ebf5ee}
.request-status-tabs strong{display:grid;place-items:center;min-width:27px;height:27px;padding:0 5px;border-radius:8px;background:var(--mint);color:var(--green)}
.feature-band{padding:65px 0;background:linear-gradient(145deg,#eaf4ee,#f7faf8 70%);border-block:1px solid #deebe1}
.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:25px}
.feature-item{position:relative;min-height:195px;padding:23px;border:1px solid #d4e6db;border-radius:17px;background:rgba(255,255,255,.86)}
.feature-item>span{position:absolute;top:17px;left:19px;color:#beaa7f;font-size:13px;font-weight:700}
.feature-item>svg{width:34px;height:34px;color:var(--green)}
.feature-item h3{margin:13px 0 5px;color:var(--deep);font-size:17px}
.feature-item p{margin:0;color:var(--muted);font-size:12px}
.editorial-card{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:32px;overflow:hidden;border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:var(--shadow-soft)}
.editorial-card>div{padding:clamp(25px,4vw,56px)}
.editorial-card h2{margin:8px 0;color:var(--deep);font-size:clamp(25px,2.8vw,37px)}
.editorial-card p{max-width:500px;color:var(--muted)}
.editorial-card img{width:100%;height:360px;object-fit:cover}
.standard-page{padding-block:20px 80px;min-height:70vh}
.page-intro{max-width:840px;padding:22px 0 30px}
.page-intro h1{margin:7px 0 10px;color:var(--deep);font-size:clamp(31px,3.7vw,48px);line-height:1.3}
.page-intro p{margin:0;color:var(--muted);font-size:16px}
.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:20px 0}
.info-card{display:flex;flex-direction:column;align-items:flex-start;min-height:225px;padding:25px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-soft)}
.info-card>svg{width:30px;height:30px;color:var(--green)}
.info-card h2,.info-card h3{margin:12px 0 5px;color:var(--deep);font-size:19px}
.info-card p{margin:0 0 15px;color:var(--muted);font-size:13px}
.info-card a:last-child{margin-top:auto;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;text-decoration:none}
.subsection{padding-top:34px}
.topic-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.topic-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 17px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);font-weight:700;text-decoration:none}
.topic-list a:hover{background:var(--mint);color:var(--green)}
.topic-list svg{width:17px;height:17px;color:var(--green)}
.media-feature{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:0;overflow:hidden;border-radius:22px;background:#fff;box-shadow:var(--shadow-soft)}
.media-feature img{width:100%;height:360px;object-fit:cover}
.media-feature>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(24px,3vw,45px)}
.media-feature h2{margin:10px 0 4px;color:var(--deep);font-size:clamp(25px,2.8vw,37px)}
.media-feature p{color:var(--muted)}
.feature-callout{display:flex;align-items:center;gap:20px;padding:29px;border:1px solid #b9d7c3;border-radius:18px;background:linear-gradient(110deg,#eef8f0,#fff);box-shadow:var(--shadow-soft)}
.feature-callout>svg{flex:none;width:42px;height:42px;color:var(--green)}
.feature-callout>div{flex:1}
.feature-callout h2{margin:0;color:var(--deep)}
.feature-callout p{margin:0;color:var(--muted)}
.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:10px 0 18px}
.catalog-toolbar>span{color:var(--muted);font-size:12px;white-space:nowrap}
.search-box{display:flex;align-items:center;gap:10px;width:min(600px,100%);min-height:47px;padding:4px 13px;border:1px solid #c6dbce;border-radius:11px;background:#fff;color:var(--green)}
.search-box:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(169,132,69,.12)}
.search-box svg{flex:none;width:19px;height:19px}
.search-box input{flex:1;min-width:0;height:38px;border:0;outline:none;background:transparent;color:var(--ink)}
.catalog-filters{margin:0 0 20px}
.public-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.public-metrics .metric-card>svg{width:27px;height:27px;margin-bottom:13px;color:var(--green)}
.public-metrics .metric-card strong{font-size:16px}
.public-metrics .metric-card span{margin-top:6px}
.detail-hero{display:flex;align-items:flex-start;gap:17px;padding:27px;margin-bottom:23px;border:1px solid #d7e7dd;border-radius:19px;background:linear-gradient(115deg,#eef7f2,#fff);box-shadow:var(--shadow-soft)}
.detail-icon{display:grid;place-items:center;width:64px;height:64px;flex:none;border-radius:17px;background:#d8ede2;color:var(--green)}
.detail-hero h1{margin:7px 0 6px;color:var(--deep);font-size:clamp(25px,2.6vw,35px);line-height:1.35}
.detail-hero p{margin:0;color:var(--muted)}
.detail-kickers{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.service-id{padding:3px 7px;border-radius:6px;background:#f3f6f4;color:#7a887d;font-size:10px;font-weight:700;direction:ltr;unicode-bidi:isolate}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:19px;align-items:start}
.detail-layout .detail-card{margin:0 0 15px}
.detail-aside .sticky{position:sticky;top:calc(var(--ribbon-height) + 103px)}
.detail-aside .btn.full{width:100%;margin:4px 0}
.detail-aside hr{height:1px;margin:20px 0;border:0;background:var(--line)}
.detail-aside strong{display:block;color:var(--deep);font-size:12px}
.detail-aside p{font-size:12px}
.source-links{display:grid;gap:5px;margin-top:8px}
.source-links a{display:inline-flex;gap:5px;font-size:11px;line-height:1.5;text-decoration:none}
.source-links a:hover{text-decoration:underline}
.steps-list{display:grid;gap:0}
.steps-list>div{display:flex;align-items:flex-start;gap:12px;padding:11px 0;border-bottom:1px solid #edf2ee}
.steps-list>div:last-child{border-bottom:0}
.steps-list span{display:grid;place-items:center;width:27px;height:27px;flex:none;border-radius:50%;background:var(--mint);color:var(--green);font-size:11px;font-weight:700}
.steps-list p{margin:0;color:var(--ink);font-size:13px}
.secondary-copy{font-size:12px!important}
.flow-page{max-width:900px}
.flow-card{padding:clamp(22px,3vw,35px)}
.wide-stepper{margin:12px 0 22px}
.flow-context{display:flex;align-items:center;gap:10px;margin-bottom:22px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--mint)}
.flow-context>div{flex:1}
.flow-context strong,.flow-context small{display:block}
.flow-context small{color:var(--muted);font-size:11px}
.flow-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:22px}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.review-grid>div,.receipt-box>div{padding:14px;border:1px solid var(--line);border-radius:11px;background:#fbfdfb}
.review-grid span,.receipt-box span{display:block;color:var(--muted);font-size:11px}
.review-grid strong,.receipt-box strong{display:block;margin-top:4px;color:var(--deep);font-size:13px;line-height:1.6}
.full-field{grid-column:1/-1}
.result-icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:17px;border-radius:50%;background:#e9f7ef;color:var(--success)}
.result-icon svg{width:37px;height:37px}
.receipt-box{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0}
.blocker{padding:19px;margin-top:16px;border:1px solid #efc9c6;border-radius:12px;background:var(--danger-soft)}
.blocker h2{margin:0;color:var(--danger);font-size:18px}
.blocker p{margin:5px 0 13px;color:#784849}
.related-service{display:flex;align-items:center;gap:8px;margin-top:16px;padding:13px 17px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--muted);font-size:12px}
.related-service strong{color:var(--deep)}
.large-empty{max-width:650px;margin:45px auto;padding:60px 30px}
.large-empty h1{color:var(--deep)}
.report-page>.btn:last-child{margin-top:19px}

.footer{margin-top:30px;padding:28px max(24px,calc((100vw - var(--content))/2));border-top:1px solid var(--line);background:#edf3ef;color:#5c7064;font-size:12px}
.footer .footer-inner{display:flex;justify-content:space-between;gap:25px}
.footer strong{color:var(--deep)}
.footer p{margin:4px 0}
.footer a{font-weight:700}
.footer h3{margin:4px 0 10px;color:var(--deep);font-size:14px}
.footer .footer-inner>div{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.footer .footer-inner>div:first-child{max-width:320px}
.footer .footer-inner a{display:inline-flex;align-items:center;gap:4px;margin:2px 0;color:var(--green);text-decoration:none}
.footer .footer-inner a:hover{text-decoration:underline}
.footer-brand img{width:55px;height:55px;object-fit:contain}
.footer-small{font-size:11px}
.footer-bottom{display:flex;justify-content:space-between;gap:10px;margin-top:22px;padding-top:15px;border-top:1px solid #d6e5da;color:#708177}

@media(max-width:1180px){
 .header-inner{gap:15px;width:min(var(--content),calc(100% - 34px))}
 .brand{min-width:135px}
 .brand img{width:55px;height:58px}
 .brand strong,.brand b{font-size:16px}
 .brand small,.brand span{font-size:10px}
 .nav-link,.main-nav a{padding-inline:5px;font-size:10.5px}
 .header-actions .btn{padding-inline:10px;font-size:11px}
 .portal-card{padding:21px 18px}
}
@media(max-width:960px){
 :root{--ribbon-height:36px}
 .header-inner{min-height:68px}
 .main-nav{display:none}
 .mobile-toggle{display:inline-flex}
 .mobile-menu{position:absolute;right:0;left:0;z-index:190;padding:8px max(18px,calc((100vw - 720px)/2)) 15px;max-height:calc(100vh - 100px);overflow:auto}
 .page-shell{width:min(100% - 38px,900px)}
 .portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .quick-actions,.feature-grid,.public-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .detail-layout{grid-template-columns:1fr}
 .detail-aside .sticky{position:static}
 .workspace-layout{grid-template-columns:1fr}
 .workspace-layout{width:min(100% - 38px,900px);margin-top:18px}
 .workspace-sidebar{position:static;display:flex;gap:4px;overflow:auto;padding:8px;white-space:nowrap;scrollbar-width:thin;scrollbar-color:#b4d7c4 transparent;scroll-snap-type:x proximity}
 .workspace-sidebar::-webkit-scrollbar{height:4px}
 .workspace-sidebar::-webkit-scrollbar-thumb{border-radius:5px;background:#b4d7c4}
 .workspace-sidebar nav{display:flex;gap:4px}
 .sidebar-role,.sidebar-bottom{display:none}
 .workspace-sidebar .sidebar-label{display:none}
 .workspace-sidebar a,.workspace-sidebar button{width:auto;min-height:44px;flex:none;padding:8px 12px;scroll-snap-align:start}
 .workspace-sidebar svg{width:17px;height:17px}
 .workspace-main{width:100%}
 .auth-layout{grid-template-columns:minmax(0,1fr) minmax(310px,440px);gap:25px}
 .auth-copy h1{font-size:36px}
}
@media(max-width:680px){
 :root{--ribbon-height:35px}
 html{scroll-padding-top:108px}
 body{font-size:14px}
 .demo-ribbon{padding:5px 8px;font-size:10px;line-height:1.25}
 .header-inner{width:calc(100% - 26px);min-height:65px;gap:9px}
 .brand{gap:6px;min-width:0;margin-inline-end:auto}
 .brand img{width:47px;height:51px}
 .brand strong,.brand b{font-size:14px}
 .brand small,.brand span{font-size:9px}
 .header-actions{gap:4px}
 .header-actions .btn{min-height:44px;padding:7px 9px;font-size:10px}
 .mobile-toggle{width:44px;height:44px;font-size:22px}
 .page-shell{width:calc(100% - 30px)}
 .hero{min-height:400px;align-items:flex-end}
 .hero::before{background-position:0% center}
 .hero::after{background:linear-gradient(0deg,rgba(0,47,43,.98),rgba(0,56,50,.94) 62%,rgba(0,69,63,.86))}
 .hero-content{padding-block:42px 70px}
 .hero-content{width:calc(100% - 30px)}
 .hero-kicker{font-size:11px}
 .hero-title{font-size:clamp(30px,7.7vw,40px);margin-top:12px}
 .hero-lead{font-size:14px;line-height:1.75}
 .hero-actions{gap:8px;margin-top:16px}
 .hero-actions .btn{width:100%}
 .hero-foot{right:15px;left:15px;bottom:15px;font-size:10px}
 .hero-foot span:last-child{display:none}
 .portal-section{padding-top:24px;padding-bottom:30px}
 .portal-grid{grid-template-columns:1fr;gap:10px}
 .portal-card{flex-direction:row;align-items:center;min-height:111px;gap:12px;padding:11px 14px;border-radius:15px}
 .portal-emblem{width:112px;height:76px;margin:0;flex:none;border-radius:13px}
 .portal-emblem img{width:91px;height:55px;margin-inline-end:9px}
 .portal-role-icon{width:42px;height:42px;bottom:-5px;left:-6px;border-width:2px;border-radius:12px}
 .portal-role-icon svg{width:23px;height:23px}
 .portal-card .icon,.portal-card .portal-icon,.portal-card>svg{width:64px;height:64px;margin:0;padding:8px;border-radius:12px;flex:none}
 .portal-card .portal-icon svg{width:40px;height:40px;padding:0}
 .portal-text{gap:1px;min-width:0}
 .portal-card h2,.portal-card h3,.portal-text strong{font-size:16px!important}
 .portal-card p,.portal-text em{font-size:11px;line-height:1.55;margin:0}
 .portal-card .card-link,.portal-card b,.portal-card strong:last-child{font-size:11px}
 .portal-arrow{align-self:center;flex:none;margin:0;width:28px;height:28px}
 .section{padding-block:43px}
 .section-head{display:block;margin-bottom:18px}
 .section-head h1,.section-head h2{font-size:27px}
 .section-head p{font-size:13px}
 .section-head a{display:inline-block;margin-top:10px}
 .service-grid,.action-grid,.metric-grid{grid-template-columns:1fr}
 .detail-hero{padding:20px 16px;gap:12px}
 .detail-icon{width:49px;height:49px;border-radius:13px}
 .detail-icon svg{width:28px;height:28px}
 .detail-hero h1{font-size:25px}
 .detail-hero p{font-size:13px}
 .review-grid,.receipt-box{grid-template-columns:1fr}
 .flow-actions .btn{width:100%}
 .related-service{display:block}
 .related-service .text-link{margin-top:5px}
 .flow-context{flex-wrap:wrap}
 .flow-context .status-chip{margin-inline-start:auto}
 .quick-actions,.feature-grid,.info-grid,.public-metrics,.topic-list{grid-template-columns:1fr}
 .quick-actions a{min-height:60px}
 .feature-band{padding:43px 0}
 .feature-item{min-height:130px;padding:19px}
 .editorial-card,.media-feature{grid-template-columns:1fr}
 .editorial-card>div,.media-feature>div{padding:23px}
 .editorial-card img,.media-feature img{height:230px}
 .standard-page{padding-block:13px 45px}
 .page-intro{padding-block:16px 22px}
 .page-intro h1{font-size:29px}
 .page-intro p{font-size:14px}
 .info-card{min-height:0;padding:20px}
 .feature-callout{display:block;padding:20px}
 .feature-callout>svg{margin-bottom:10px}
 .feature-callout .btn{margin-top:16px}
 .catalog-toolbar{display:block}
 .catalog-toolbar>span{display:block;margin-top:8px}
 .service-card{min-height:158px;padding:18px}
 .breadcrumbs{margin:14px 0}
 .workspace-layout{gap:14px;padding-bottom:35px}
 .workspace-layout{width:calc(100% - 30px);margin-top:12px}
 .workspace-sidebar{margin-inline:-15px;border-radius:0;border-inline:0;box-shadow:none}
 .workspace-sidebar a{font-size:11px}
 .workspace-top{display:block}
 .workspace-top-actions{margin-top:10px}
 .workspace-top-actions .btn{min-height:34px;padding:6px 10px}
 .workspace-hero{padding:23px 18px;border-radius:16px}
 .workspace-hero h1{font-size:25px}
 .metric-grid{gap:8px;margin:12px 0}
 .metric-grid>*,.metric-card{padding:14px 16px}
 .metric-grid strong,.metric-card strong{font-size:21px}
 .dashboard-columns,.service-grid.compact{grid-template-columns:1fr}
 .dashboard-columns .detail-card{margin-bottom:0}
 .action-card:first-child{display:block;padding:17px}
 .action-card:first-child h2{font-size:18px}
 .action-card:first-child .btn{margin-top:14px}
 .card-heading{align-items:flex-start}
 .card-heading h2{font-size:16px}
 .appointment-card{display:block;padding:18px}
 .appointment-card>svg{margin-bottom:10px}
 .appointment-card .btn{width:100%}
 .authority-card{display:block}
 .authority-card>svg{margin-bottom:10px}
 .case-banner{align-items:flex-start;flex-wrap:wrap}
 .case-banner .status-chip{margin-inline-start:auto}
 .detail-card{padding:17px;margin:11px 0;border-radius:15px}
 .detail-card .detail-row{display:block}
 .detail-card .detail-row strong{text-align:right}
 .form-grid{grid-template-columns:1fr;gap:12px}
 .field.full,.form-grid .full{grid-column:auto}
 .form-actions .btn{flex:1}
 .stepper{overflow:auto;padding-bottom:4px}
 .stepper li{flex:none;min-width:95px}
 .stepper li:not(:last-child)::after{min-width:12px}
 .segmented{width:100%;overflow:auto;flex-wrap:nowrap}
 .segmented button,.segmented a{flex:none}
 .auth-shell{margin:25px auto 45px}
 .auth-layout{display:block;padding-block:18px 45px}
 .auth-copy{margin-bottom:25px}
 .auth-copy h1{font-size:31px}
 .auth-copy>p{font-size:14px}
 .auth-points{gap:9px;margin-top:17px}
 .auth-points>div{font-size:12px}
 .auth-panel{padding:22px 18px}
 .auth-card{padding:23px 18px}
 .auth-card h1{font-size:25px}
 .auth-code input{width:47px;height:55px}
 .footer{margin-top:5px;padding:24px 16px}
 .footer .footer-inner{display:block}
 .footer .footer-inner>div{margin-bottom:22px}
 .footer-bottom{display:block}
}
@media(max-width:375px){
 .brand small,.brand span{display:none}
 .brand img{width:43px}
 .portal-grid{gap:7px}
 .portal-card{min-height:103px;gap:8px;padding:10px}
 .portal-emblem{width:89px;height:69px}
 .portal-emblem img{width:76px;height:49px;margin-inline-end:6px}
 .portal-role-icon{width:36px;height:36px;bottom:-4px;left:-5px}
 .portal-role-icon svg{width:20px;height:20px}
 .portal-arrow{width:25px;height:25px}
 .portal-card h2,.portal-card h3,.portal-text strong{font-size:15px!important}
 .hero-title{font-size:30px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.schema-list{margin:8px 0 18px;padding-inline-start:24px;color:var(--ink);line-height:1.9}
.schema-list li{margin:5px 0}
.service-owner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0;padding:15px 17px;border:1px solid #d0e8d9;border-radius:13px;background:var(--mint)}
.service-owner div{display:grid;gap:3px}
.service-owner strong{font-size:12px;color:var(--green)}
.service-owner span{font-size:13px;line-height:1.75;overflow-wrap:anywhere}
.demo-docs{margin:18px 0;padding:17px;border:1px solid var(--line);border-radius:13px;background:#fbfcfa}
.demo-docs h3{margin:0 0 10px;font-size:15px;color:var(--deep)}
.demo-docs ul{display:grid;gap:8px;margin:0 0 10px;padding:0;list-style:none}
.demo-docs li{display:flex;align-items:flex-start;gap:7px;font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.demo-docs li svg{flex:none;margin-top:3px;color:var(--green)}
.demo-docs small{color:var(--muted)}
.future-event{display:inline-block;margin-top:4px;padding:2px 8px;border-radius:999px;background:var(--gold-soft);color:#815e2c;font-size:11px;font-style:normal}
.event-list a.event-item{align-items:flex-start;color:inherit;text-decoration:none;border-radius:9px;padding-inline:8px;transition:background .2s}
.event-list a.event-item:hover,.event-list a.event-item:focus-visible{background:var(--mint)}
.event-list a.event-item>span:nth-child(2){flex:1}
.event-list a.event-item>svg{flex:none;margin-top:6px;color:var(--green)}
.btn.full{width:100%}
.context-page .detail-layout{max-width:1040px}
.context-page .detail-layout>aside{display:flex;flex-direction:column;align-items:stretch}
.context-page .detail-layout>aside .btn{margin-top:8px}
@media(max-width:960px){.context-page .detail-layout{max-width:680px}.service-owner{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.schema-list{padding-inline-start:20px;font-size:12px}.service-owner{grid-template-columns:1fr;padding:13px}.service-owner span,.demo-docs li{font-size:12px}.demo-docs{padding:13px}.context-page .detail-layout{max-width:none}.context-page .flow-context{align-items:flex-start}}
@media(max-width:760px){
 .quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
 .request-status-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-service-search>div{display:flex}
 .home-service-search input{font-size:16px}
 .receipt-row strong{font-size:13px}
 .receipt-row small{font-size:12px}
 .portal-text em{font-size:12px;line-height:1.5}
}
@media(max-width:440px){
 .quick-actions{grid-template-columns:1fr}
 .home-service-search>div{display:grid;grid-template-columns:1fr}
 .home-service-search .btn{width:100%}
 .request-status-tabs a{font-size:12px;padding:8px}
 .request-status-tabs strong{min-width:24px;height:24px}
}
