:root {
  --ink:#173440; --ink-soft:#53636a; --teal:#075d63; --teal-dark:#073d48;
  --gold:#c99535; --gold-bright:#f3d07b; --stone:#efe7da; --light:#faf9f6;
  --line:#dedfd7; --rail:clamp(90px,11.5vw,184px);
  --shadow:0 12px 30px rgba(43,35,22,.11),0 2px 5px rgba(43,35,22,.09);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Segoe UI",Tahoma,Arial,sans-serif;color:var(--ink);background:linear-gradient(130deg,#c9d0c8,#e5ddcf 55%,#bed3c8);font-size:14px;line-height:1.45;min-height:100vh}
a{color:inherit}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #d6a746;outline-offset:3px}
button,input{font:inherit}
[hidden]{display:none!important}
.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;white-space:nowrap;overflow:hidden}
.skip-link{position:absolute;z-index:60;top:-70px;left:20px;background:#fff;padding:12px;border-radius:5px}
.skip-link:focus{top:12px}
.doric-rail{position:fixed;z-index:0;top:0;bottom:0;width:var(--rail);background-position:center center;background-repeat:no-repeat;background-size:100% 100%;box-shadow:0 0 20px rgba(54,41,24,.3);pointer-events:none}
.doric-rail--left{left:0;background-image:url("../assets/doric-left.webp")}
.doric-rail--right{right:0;background-image:url("../assets/doric-right.webp")}
.page-shell{position:relative;z-index:1;width:calc(100% - 2*var(--rail));max-width:1370px;min-width:0;min-height:100vh;margin:0 auto;background:#f3eee5;box-shadow:0 2px 16px rgba(13,36,35,.25);border-left:5px solid #d5c9b7;border-right:5px solid #d5c9b7;display:flex;flex-direction:column}
.site-header{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:14px clamp(16px,2.5vw,34px);background:linear-gradient(180deg,#faf8f3 0%,#efe6d6 100%);border-top:11px solid #d9cbb4;border-bottom:6px ridge #c6b498;box-shadow:0 4px 10px rgba(61,43,23,.14);position:relative;z-index:10}
.brand{text-decoration:none;display:flex;align-items:center;gap:11px;flex-shrink:0}
.brand-monogram{display:flex;align-items:center;justify-content:center;color:#b28538;font-family:Georgia,serif;font-size:39px;font-weight:bold;width:42px;height:47px;border:2px solid #dcc9a1;border-radius:5px;text-shadow:0 1px #fff}
.brand strong{font:700 clamp(17px,1.38vw,24px)/1.12 Georgia,"Times New Roman",serif;letter-spacing:.045em;display:block}
.brand small{font-size:10px;color:#46555b;letter-spacing:.02em;display:block;margin-top:3px;white-space:nowrap}
.main-nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.main-nav a{text-decoration:none;font-size:12px;font-weight:700;padding:10px 11px;border-radius:6px;white-space:nowrap;transition:background .2s ease,color .2s ease}
.main-nav a:hover{background:#e9e4da}
.main-nav a.active{color:white;background:linear-gradient(130deg,#176c72,#06434a);box-shadow:0 3px 9px #073c4338}
.header-tag{color:#847142;background:#fff7e8;padding:6px 9px;border:1px solid #e0c995;border-radius:50px;font-size:10px;font-weight:700;white-space:nowrap}
.menu-toggle{display:none;border:1px solid #afbea9;background:#fff;border-radius:8px;padding:10px;min-width:44px;min-height:44px;cursor:pointer}
.menu-toggle span{display:block;width:21px;height:2px;background:#183941;margin:4px auto}
main{flex:1;padding:16px clamp(12px,2.4vw,30px) 24px}
.hero{min-height:272px;position:relative;border-radius:10px;overflow:hidden;display:flex;justify-content:space-between;align-items:center;padding:28px 30px 28px 34px;gap:24px;color:white;background:linear-gradient(90deg,rgba(5,35,47,.93),rgba(10,49,52,.52) 52%,rgba(14,49,48,.24) 100%),url("../assets/alpine-hero.webp") center/cover;box-shadow:var(--shadow)}
.hero-copy{position:relative;z-index:2;max-width:620px}
.eyebrow{font:700 13px/1.2 Georgia,serif;letter-spacing:.1em;color:#f3cd77;display:flex;align-items:center;gap:12px;margin:0 0 13px}
.eyebrow span{display:inline-block;background:#e9c676;width:29px;height:2px}
.hero h1{font:700 clamp(26px,3vw,41px)/1.14 Georgia,serif;letter-spacing:-.025em;margin:0 0 11px;text-shadow:0 2px 6px rgba(0,0,0,.24)}
.hero-copy>p:not(.eyebrow){font-size:14px;max-width:430px;color:#f5f5ed;margin:0 0 18px}
.hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;border-radius:7px;min-height:42px;padding:11px 18px;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px)}
.btn-gold{color:#2d280d;background:linear-gradient(#ffe2a0,#cca03c);box-shadow:0 4px 7px rgba(0,0,0,.24)}
.hero-subtle-link{color:#fff;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.hero-capabilities{list-style:none;position:relative;z-index:2;min-width:260px;max-width:280px;margin:0;padding:12px 16px;color:#16353e;background:rgba(249,245,234,.92);border:1px solid rgba(255,255,255,.55);box-shadow:0 5px 18px rgba(0,0,0,.18);border-radius:9px;backdrop-filter:blur(7px)}
.hero-capabilities li{display:flex;align-items:center;gap:11px;padding:8px 0;font-size:12px;border-bottom:1px solid #dad1c4}
.hero-capabilities li:last-child{border:0}
.hero-capabilities span{color:var(--teal);font-size:20px;width:26px;text-align:center;font-weight:700}
.catalog{padding:23px 4px 8px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:18px}
.overline{font-size:11px;letter-spacing:.14em;color:#a17529;font-weight:800;margin:0 0 4px}
h2{font:700 25px Georgia,serif;margin:0}
.section-heading p:not(.overline){font-size:12px;color:var(--ink-soft);margin:5px 0 0;max-width:620px}
.catalog-search{border:1px solid #d8d5c9;border-radius:7px;background:white;display:flex;align-items:center;padding:0 11px;height:40px;color:#7c8487;flex-shrink:0}
.catalog-search span{font-size:22px}
.catalog-search input{border:0;outline:0;width:155px;max-width:25vw;padding:10px 5px;background:transparent;color:var(--ink)}
.apps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.app-card{position:relative;min-height:218px;display:flex;overflow:hidden;border-radius:11px;border:1px solid #e3e0d8;background:#fff;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}
.app-card:hover{transform:translateY(-3px);box-shadow:0 14px 25px #382b201d}
.app-card:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,#fff 53%,rgba(255,255,255,.93) 63%,rgba(255,255,255,.08) 96%);z-index:1;pointer-events:none}
.app-card>img{position:absolute;right:0;top:0;width:43%;height:100%;object-fit:cover;object-position:center;filter:saturate(.85)}
.app-card-content{position:relative;z-index:2;display:flex;flex-direction:column;width:100%;padding:16px 12px 15px 17px}
.card-category{display:flex;gap:7px;align-items:center;margin-bottom:8px;min-height:35px}
.circle-icon{display:inline-grid;place-items:center;width:35px;height:35px;border-radius:50%;color:white;font-size:20px;font-weight:700;box-shadow:0 2px 5px #0002}
.circle-icon.blue{background:linear-gradient(#0d6f81,#033e4f)}
.circle-icon.gold{background:linear-gradient(#f0bd55,#aa7924)}
.pending{font-size:9px;color:#715c32;background:#fdf4df;border:1px solid #e5d4af;padding:3px 5px;border-radius:4px;max-width:130px}
.app-card h3{font:700 clamp(17px,1.65vw,21px)/1.16 Georgia,serif;max-width:70%;margin:0 0 8px;color:#102d3b}
.app-card p{font-size:12px;line-height:1.36;color:#546166;margin:0 0 12px;max-width:69%}
.card-link{font-size:11px;font-weight:700;text-decoration:none;align-self:flex-start;margin-top:auto;padding:9px 10px;border-radius:5px;background:var(--teal);color:white;box-shadow:0 2px 6px #062a3233}
.card-link:hover{background:#03464e}
.search-status{font-size:12px;color:#657076;margin-top:8px;min-height:0}
.values-bar{background:linear-gradient(180deg,#fcfaf6,#eae0d1);border:1px solid #d1c4af;border-radius:9px;padding:15px 10px;display:grid;grid-template-columns:repeat(4,1fr);gap:0;box-shadow:0 3px 6px #0000000b}
.values-bar>div{display:flex;align-items:center;justify-content:center;gap:10px;color:#293b3f;font-size:12px;line-height:1.35;border-right:1px solid #d9d2c6}
.values-bar>div:last-child{border:0}
.value-icon{font-size:26px;color:var(--teal-dark)}
.demo-note{font-size:11px;color:#64645f;line-height:1.5;margin:16px 5px 0;padding:12px 13px;border-radius:7px;border-left:3px solid var(--gold);background:#fffaf0}
.site-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:19px clamp(16px,2.5vw,32px) 22px;font-size:11px;color:#625d52;background:linear-gradient(180deg,#e6d6bf,#eee4d5);border-top:8px ridge #c8b396;min-height:66px}
.site-footer a{text-decoration:none;color:#284b56;font-weight:700}
/* Inner workspaces: same architectural identity, much lighter frame for productive space. */
.workspace-main{padding-top:16px}
.workspace-breadcrumb{display:flex;align-items:center;gap:9px;font-size:12px;color:#657278;margin-bottom:13px}
.workspace-breadcrumb a{text-decoration:none;color:var(--teal)}
.workspace-warning{display:flex;gap:15px;align-items:center;padding:10px 14px;background:#fff8e8;border:1px solid #e2d5b5;border-radius:7px;color:#6c5c40;margin-bottom:16px;font-size:12px}
.workspace-warning strong{font-size:10px;color:#8a5b11;letter-spacing:.05em;flex-shrink:0}
.workspace-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:17px;align-items:start}
.workspace-sidebar{background:#faf9f5;border:1px solid #e0d8cc;border-radius:10px;box-shadow:var(--shadow);padding:18px 10px;min-height:510px}
.sidebar-label{font-size:10px;color:#937133;letter-spacing:.14em;font-weight:800;margin:3px 12px 14px}
.module-nav{display:grid;gap:4px}
.module-nav a{text-decoration:none;color:#384b50;font-size:12px;padding:11px 10px;border-radius:7px;display:flex;align-items:center;gap:11px;line-height:1.23}
.module-nav a:hover{background:#f0e8db}
.module-nav a.selected{color:white;background:linear-gradient(110deg,#0d6870,#0a4950);box-shadow:0 3px 7px #003e4b27;font-weight:700}
.module-nav a span{font-size:20px;min-width:24px;text-align:center}
.sidebar-foot{margin:30px 9px 0;border-top:1px solid #e1ddd3;padding:16px 7px;color:#687474;display:flex;gap:9px;align-items:start}
.sidebar-foot>span{font-size:24px;color:#b18c45}
.sidebar-foot p{font-size:11px;margin:0;line-height:1.45}
.workspace-panel{min-width:0;background:white;border:1px solid #e3dfd6;border-radius:10px;padding:20px;box-shadow:var(--shadow)}
.workspace-panel-header{display:flex;justify-content:space-between;align-items:start;gap:15px;border-bottom:1px solid #e7e5dc;padding-bottom:17px}
.workspace-panel-header h1{font:700 clamp(25px,2.5vw,34px)/1.15 Georgia,serif;margin:1px 0 7px}
.workspace-panel-header p:not(.overline){font-size:13px;color:#667477;margin:0;max-width:570px}
.workspace-pill{font-size:10px;font-weight:700;white-space:nowrap;padding:7px 11px;border-radius:50px;color:#786334;border:1px solid #e7d6b0;background:#fff8e9}
.workspace-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:19px}
.workspace-summary>div{padding:17px;background:#f5f9f8;border:1px solid #e5eeee;border-radius:9px;display:flex;flex-direction:column;gap:2px}
.mini-kicker{font-size:10px;color:#8f7a42;letter-spacing:.1em;font-weight:700}
.workspace-summary strong{font:700 clamp(21px,2vw,27px) Georgia,serif;color:#164953}
.workspace-summary small{font-size:11px;color:#6e7c7d}
.workspace-columns{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(220px,1fr);gap:15px;margin-top:18px}
.workspace-tool-panel,.workspace-activity{border:1px solid #e7e5df;border-radius:9px;background:#fff;min-width:0;padding:17px}
.tool-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.tool-heading h2,.workspace-activity h2{font:700 18px Georgia,serif}
.tool-heading>span{font-size:10px;color:#8a7662}
.tools-list{display:flex;flex-direction:column;gap:9px}
.tool-row{display:grid;grid-template-columns:37px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 9px;border:1px solid #e9e9e3;background:#fcfcfa;border-radius:8px}
.tool-symbol{width:37px;height:37px;border-radius:8px;background:#deefed;display:grid;place-items:center;font-size:20px;color:var(--teal)}
.tool-row strong{font-size:12px;color:#263b45}
.tool-row p{font-size:11px;color:#728080;margin:2px 0 0}
.tool-state{font-size:10px;color:#967133;background:#fff5dc;padding:3px 5px;border-radius:4px}
.workspace-activity{text-align:left;background:linear-gradient(175deg,#fafcfb,#f6f4eb)}
.activity-illustration{width:100%;height:125px;display:grid;place-items:center;position:relative;overflow:hidden;color:#0b5b63;font:700 64px Georgia,serif}
.activity-ring{position:absolute;width:120px;height:120px;border-radius:50%;background:#e0ece6;box-shadow:0 0 0 20px #eaf1ee,0 0 0 36px #f2f6f3}
.activity-illustration>span{position:relative;z-index:2}
.workspace-activity>p{font-size:12px;color:#647174;line-height:1.55;margin:5px 0 16px}
.btn-outline{border:1px solid #0e666c;color:#0c6067;background:#fff;padding:10px 12px;min-height:37px;font-size:12px}
.workspace-note{margin-top:16px;border-radius:7px;background:#f5f4ef;color:#617071;padding:12px 14px;font-size:11px;border-left:3px solid #b79250}
@media(max-width:1320px){
  :root{--rail:clamp(68px,9vw,120px)}
  .site-header{gap:9px;padding-left:15px;padding-right:15px}
  .brand strong{font-size:18px}
  .main-nav a{padding:10px 7px;font-size:11px}
  .header-tag{display:none}
  .hero{padding:22px}
  .hero h1{font-size:clamp(24px,2.7vw,36px)}
  .hero-capabilities{min-width:195px;max-width:235px}
  .app-card{min-height:228px}
  .app-card-content{padding:13px 9px 13px 12px}
  .app-card h3{font-size:18px;max-width:77%}
  .app-card p{max-width:72%}
  .pending{font-size:8px}
}
@media(max-width:1060px){
  :root{--rail:63px}
  .site-header{flex-wrap:wrap;gap:8px}
  .brand{flex:1}
  .main-nav{flex:1;justify-content:flex-end}
  .apps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workspace-layout{grid-template-columns:180px minmax(0,1fr)}
  .workspace-columns{grid-template-columns:1fr}
  .workspace-activity{display:grid;grid-template-columns:1fr 1fr;column-gap:12px;align-items:center}
  .workspace-activity h2{grid-column:1/-1}
  .workspace-activity .btn{justify-self:start}
  .activity-illustration{grid-row:2/4;grid-column:2}
}
@media(max-width:780px){
  .doric-rail{display:none}
  .page-shell{width:100%;border-left:0;border-right:0;min-height:100vh}
  .site-header{min-height:66px;border-top:7px solid #d0b88f;padding:9px 14px;flex-wrap:nowrap}
  .brand-monogram{width:34px;height:37px;font-size:30px}
  .brand strong{font-size:19px}
  .brand small{font-size:9px}
  .menu-toggle{display:block;flex-shrink:0}
  .main-nav{position:absolute;top:calc(100% - 2px);left:0;right:0;display:none;align-items:stretch;flex-direction:column;gap:0;background:#fbf9f3;padding:10px 13px 14px;border-bottom:2px solid #d4c3a7;box-shadow:0 9px 13px #3333}
  .main-nav.is-open{display:flex}
  .main-nav a{font-size:14px;min-height:44px;display:flex;align-items:center;padding:10px 15px}
  main{padding:12px 13px 16px}
  .hero{min-height:310px;padding:20px;gap:11px;background-position:63% center}
  .hero h1{font-size:clamp(25px,6vw,38px)}
  .hero-capabilities{display:none}
  .hero-copy>p:not(.eyebrow){max-width:390px}
  .section-heading{align-items:start;flex-direction:column}
  .catalog-search{width:100%}
  .catalog-search input{max-width:none;width:100%}
  .apps-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .app-card h3{font-size:17px}
  .app-card>img{width:39%}
  .values-bar{grid-template-columns:repeat(2,1fr);row-gap:12px}
  .values-bar>div{justify-content:flex-start;padding:3px 10px}
  .values-bar>div:nth-child(2){border-right:0}
  .values-bar>div:nth-child(3),.values-bar>div:nth-child(4){border-top:1px solid #d9d2c6;padding-top:12px}
  .workspace-layout{display:flex;flex-direction:column}
  .workspace-sidebar{width:100%;min-height:0;padding:12px}
  .sidebar-label{margin:2px 5px 9px}
  .module-nav{display:flex;overflow-x:auto;gap:7px;padding-bottom:3px;scroll-snap-type:x proximity}
  .module-nav a{white-space:nowrap;min-height:44px;border:1px solid #e5e0d7;scroll-snap-align:start}
  .sidebar-foot{display:none}
  .workspace-panel{width:100%;padding:16px}
  .workspace-panel-header{flex-wrap:wrap}
  .workspace-warning{align-items:flex-start;flex-direction:column;gap:4px}
  .workspace-columns{grid-template-columns:1fr}
}
@media(max-width:540px){
  .brand strong{font-size:16px}
  .brand small{font-size:8px}
  .hero{min-height:335px;padding:20px 17px;background:linear-gradient(90deg,rgba(4,35,48,.92),rgba(2,43,51,.7)),url("../assets/alpine-hero.webp") 58% center/cover}
  .hero h1{font-size:30px}
  .hero-copy>p:not(.eyebrow){font-size:13px}
  .hero-actions{gap:13px}
  .hero-subtle-link{font-size:11px}
  .catalog{padding-top:20px}
  .section-heading h2{font-size:23px}
  .apps-grid{grid-template-columns:minmax(0,1fr)}
  .app-card{min-height:192px}
  .app-card>img{width:40%}
  .app-card h3{max-width:70%;font-size:21px}
  .app-card p{max-width:68%;font-size:12px}
  .app-card-content{padding:14px 14px 14px 16px}
  .card-category{margin-bottom:7px}
  .values-bar>div{gap:7px;font-size:10px}
  .value-icon{font-size:20px}
  .workspace-summary{gap:6px}
  .workspace-summary>div{padding:10px 8px}
  .workspace-summary strong{font-size:18px}
  .workspace-summary small{font-size:9px}
  .workspace-panel-header h1{font-size:26px}
  .workspace-activity{display:block}
  .activity-illustration{height:92px}
  .site-footer{flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;padding:14px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* EUWC-PORTAL-FIXED-SHELL-68G-START
   Fixed architectural shell for both portal pages.
   Existing navigation, applications and Doric assets preserved.
   Only the main working area scrolls.
*/

html {
    height: 100%;
    overflow: hidden;
}

body {
    height: 100vh;
    height: 100dvh;
    min-height: 0;
    overflow: hidden;
}

.doric-rail {
    position: fixed;
    z-index: 2;
    top: 0;
    bottom: 0;
    pointer-events: none;
}

.page-shell {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    width: calc(100% - 2 * var(--rail));
    max-width: 1370px;
    height: 100vh;
    height: 100dvh;
    min-height: 0;
    margin: 0 auto;
    overflow: visible;
}

.page-shell > .site-header {
    position: relative;
    z-index: 10;
    isolation: isolate;
    display: flex;
    grid-row: 1;
    align-items: center;
    width: 100%;
    min-height: 90px;
    margin: 0;
    border-top: 0;
    border-bottom: 0;
    background: transparent;
    box-shadow: none;
}

.page-shell > .site-header::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 100vw;
    transform: translateX(-50%);
    pointer-events: none;
    background:
        linear-gradient(
            rgba(255, 250, 242, .57),
            rgba(255, 250, 242, .53)
        ),
        url("../assets/header-bricks.png")
            center center / 360px auto repeat;
    border-bottom: 6px ridge #c6b498;
    box-shadow: 0 4px 10px rgba(61,43,23,.14);
}

.page-shell > main#main {
    grid-row: 2;
    display: block;
    min-width: 0;
    min-height: 0;
    height: auto;
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    scrollbar-gutter: stable;
    scroll-padding-top: 16px;
}

.page-shell > .site-footer {
    position: relative;
    z-index: 3;
    isolation: isolate;
    display: flex;
    grid-row: 3;
    align-items: center;
    width: 100%;
    min-height: 66px;
    margin: 0;
    border-top: 0;
    background: transparent;
    box-shadow: none;
}

.page-shell > .site-footer::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 100vw;
    transform: translateX(-50%);
    pointer-events: none;
    background:
        linear-gradient(
            rgba(255, 250, 242, .53),
            rgba(255, 250, 242, .51)
        ),
        url("../assets/footer-construction.png")
            center center / 680px auto repeat;
    border-top: 8px ridge #c8b396;
    box-shadow: 0 -3px 9px rgba(61,43,23,.11);
}

@media (max-width: 780px) {
    .page-shell {
        width: 100%;
        max-width: none;
        height: 100vh;
        height: 100dvh;
        min-height: 0;
        border-left: 0;
        border-right: 0;
    }

    .page-shell > .site-header {
        min-height: 66px;
    }

    .page-shell > .site-header::before {
        background-size: 100% 100%, 220px auto;
    }

    .page-shell > main#main {
        scrollbar-gutter: auto;
        scroll-padding-top: 12px;
    }

    .page-shell > .site-footer::before {
        background-size: 100% 100%, 480px auto;
    }
}

/* EUWC-PORTAL-FIXED-SHELL-68G-END */
