:root{
  --navy:#0D1F35;--navy2:#152C47;--amber:#C4822A;--amber2:#E8A046;--soft:#F5F8FC;--line:#D8E6F0;--text:#1C2E3F;--muted:#5A7089;--white:#fff;--shadow:0 24px 60px rgba(13,31,53,.13);--radius:20px;
}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);background:#fff;line-height:1.65;overflow-x:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}.container{width:min(1160px,92%);margin:auto}.preline{white-space:pre-line}.eyebrow{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:.82rem;letter-spacing:.22em;text-transform:uppercase;color:var(--amber)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 25px;border-radius:11px;font-weight:800;font-size:.92rem;border:0;cursor:pointer;transition:transform .18s,box-shadow .18s,opacity .18s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--secondary),var(--amber2));color:#fff;box-shadow:0 14px 32px rgba(196,130,42,.25)}.btn-outline-light{border:1.5px solid rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.04)}.btn.ghost{background:#fff;color:var(--navy);border:1px solid var(--line)}.text-link{color:var(--secondary);font-weight:800;display:inline-flex;gap:6px;margin-top:18px;transition:gap .16s}.text-link:hover{gap:10px}.small,.btn.small{padding:9px 18px;font-size:.84rem}
.site-header{position:sticky;top:0;z-index:100;background:rgba(13,31,53,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 0}.brand{display:flex;align-items:center;gap:12px;color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:1.18rem;letter-spacing:.05em}.brand-logo{width:44px;height:44px;border-radius:50%;object-fit:cover;background:#fff;border:2px solid rgba(255,255,255,.5)}.brand-badge{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--secondary),var(--amber2));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:'Barlow Condensed';font-weight:900}.main-nav{display:flex;align-items:center;gap:28px}.main-nav a{color:rgba(255,255,255,.72);font-weight:700;font-size:.9rem;transition:color .18s}.main-nav a:hover{color:#fff}.nav-cta{background:linear-gradient(135deg,var(--secondary),var(--amber2));color:#fff!important;padding:10px 20px;border-radius:10px;box-shadow:0 10px 30px rgba(196,130,42,.2)}.nav-toggle{display:none;background:none;border:0;cursor:pointer;flex-direction:column;gap:5px}.nav-toggle span{width:24px;height:2px;background:#fff;border-radius:2px;display:block}
.flash-wrap{padding-top:14px}.flash{padding:12px 16px;border-radius:10px;font-weight:700;font-size:.88rem;margin-bottom:8px;transition:opacity .6s}.flash.success{background:#e8fff2;color:#0b6b35;border:1px solid #b6efd4}.flash.danger{background:#fff0f0;color:#9e1d1d;border:1px solid #ffc8c8}.flash.warning{background:#fff8e1;color:#8a5b00;border:1px solid #ffe08a}.flash.info{background:#e8f4ff;color:#0b4f93;border:1px solid #b3d4f5}
.hero{position:relative;background:var(--primary);overflow:hidden;padding:112px 0 125px}.hero-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(196,130,42,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(196,130,42,.06) 1px,transparent 1px);background-size:52px 52px;transform:rotate(-8deg) scale(1.35)}.hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 72% 38%,rgba(232,160,70,.13),transparent 58%),radial-gradient(ellipse at 12% 85%,rgba(21,44,71,.85),transparent 45%)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.18fr .82fr;gap:62px;align-items:center}.hero-tag{display:inline-flex;background:rgba(196,130,42,.15);border:1px solid rgba(196,130,42,.28);color:var(--amber2);padding:7px 15px;border-radius:7px;font-size:.75rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;margin-bottom:24px}.hero h1{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:clamp(3.25rem,7vw,6.5rem);line-height:.95;color:#fff;letter-spacing:-.01em;margin-bottom:22px}.hero .lead{color:rgba(255,255,255,.66);font-size:1.08rem;max-width:580px;margin-bottom:34px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-panel{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:32px;box-shadow:0 40px 80px rgba(0,0,0,.25);backdrop-filter:blur(8px)}.hero-panel img{border-radius:18px;background:#fff;margin:auto;max-height:310px;object-fit:contain}.hero-metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.hero-metrics div{background:rgba(255,255,255,.06);padding:16px;border-radius:14px;text-align:center}.hero-metrics strong{display:block;color:var(--amber2);font-size:2.2rem;font-family:'Barlow Condensed';line-height:1}.hero-metrics span{color:rgba(255,255,255,.55);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.trust-strip{background:var(--navy2);padding:18px 0;border-top:1px solid rgba(255,255,255,.06)}.trust-grid{display:flex;flex-wrap:wrap;gap:22px 42px;justify-content:center}.trust-grid span{color:rgba(255,255,255,.55);font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.section{padding:92px 0}.section.soft{background:var(--soft)}.section.dark{background:var(--primary);color:#fff}.section h2,.page-hero h1{font-family:'Barlow Condensed',sans-serif;font-weight:900;color:var(--navy);line-height:1.05}.section h2{font-size:clamp(2rem,4vw,3.25rem)}.section.dark h2{color:#fff}.section-head{margin-bottom:48px}.row-between{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center}.about-intro p:last-child{font-size:1.02rem;color:var(--muted)}
.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px 26px;box-shadow:0 8px 30px rgba(13,31,53,.04);position:relative;overflow:hidden;transition:transform .22s,box-shadow .22s}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.service-card::before{content:'';position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:linear-gradient(90deg,var(--secondary),var(--amber2))}.service-card img{height:160px;width:100%;object-fit:cover;border-radius:14px;margin-bottom:18px}.service-card h3,.service-card h2,.content-card h2,.content-card h3{font-family:'Barlow Condensed',sans-serif;color:var(--navy);line-height:1.15}.service-card h3{font-size:1.38rem;margin:16px 0 10px}.service-card h2{font-size:1.55rem;margin:16px 0 10px}.service-card p,.content-card p{color:var(--muted)}.icon-chip{display:inline-flex;background:rgba(196,130,42,.11);color:var(--secondary);font-weight:900;font-size:.75rem;letter-spacing:.09em;text-transform:uppercase;padding:7px 12px;border-radius:999px}.large{min-height:285px}
.stats-band{padding:70px 0;background:linear-gradient(135deg,var(--primary),var(--navy2));position:relative;overflow:hidden}.stats-band::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(196,130,42,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(196,130,42,.04) 1px,transparent 1px);background-size:44px 44px}.stats-band.compact{padding:60px 0}.stats-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(255,255,255,.08);border-radius:22px;overflow:hidden}.stats-grid div{padding:38px 26px;text-align:center;background:rgba(13,31,53,.45)}.stats-grid strong{display:block;color:var(--amber2);font-family:'Barlow Condensed';font-weight:900;font-size:clamp(2.5rem,4vw,3.8rem);line-height:1}.stats-grid span{color:rgba(255,255,255,.55);font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.project-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 30px rgba(13,31,53,.04);transition:transform .22s,box-shadow .22s}.project-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.project-image{height:220px;background:linear-gradient(135deg,#dbe8f3,#edf5fb);display:flex;align-items:center;justify-content:center;color:#6f8193;font-weight:900}.project-image img{width:100%;height:100%;object-fit:cover}.project-body{padding:24px}.project-body h3,.project-body h2{font-family:'Barlow Condensed';font-size:1.42rem;line-height:1.15;color:var(--navy);margin:12px 0 8px}.project-body h2 a,.project-body h3 a{color:inherit}.project-body h2 a:hover,.project-body h3 a:hover{color:var(--secondary)}.project-meta{font-weight:700;color:var(--muted);font-size:.88rem}.status{display:inline-flex;background:rgba(196,130,42,.12);color:var(--secondary);padding:5px 11px;border-radius:999px;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.why-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:56px;align-items:start}.why-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.why-cards article{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:26px}.why-cards h3{font-family:'Barlow Condensed';font-size:1.35rem;margin-bottom:8px}.why-cards p{color:rgba(255,255,255,.55)}.cta{background:linear-gradient(135deg,var(--secondary),var(--amber2));padding:82px 0}.cta-box{display:grid;grid-template-columns:1fr auto;align-items:center;gap:34px;color:#fff}.cta-box h2{font-family:'Barlow Condensed';font-size:clamp(2rem,4vw,3.2rem);line-height:1.05}.cta-box p{color:rgba(255,255,255,.78);max-width:580px}
.page-hero{padding:82px 0 70px;background:linear-gradient(180deg,#eff8ff,#fff);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.7rem,5.5vw,4.7rem);margin:.18em 0 .3em}.page-hero p{color:var(--muted);max-width:680px}.content-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.content-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px;box-shadow:0 8px 30px rgba(13,31,53,.04)}.content-card.wide{grid-column:1/-1}.content-card h2{font-size:2rem;margin-bottom:14px}.content-card h3{font-size:1.45rem;margin-bottom:10px}.project-detail{display:grid;gap:28px}.detail-image,.project-detail>img{width:100%;max-height:520px;object-fit:cover;border-radius:24px;border:1px solid var(--line)}.meta-list{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}.meta-list div{background:var(--soft);border-radius:14px;padding:16px}.meta-list dt{font-size:.74rem;font-weight:900;color:var(--secondary);text-transform:uppercase;letter-spacing:.08em}.meta-list dd{font-weight:800;color:var(--navy);margin-top:4px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.gallery-card img{width:100%;height:250px;object-fit:cover}.gallery-card figcaption{padding:16px;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px}.contact-card p{margin:12px 0}.map-box{margin-top:18px;border-radius:16px;overflow:hidden}.map-box iframe{width:100%;min-height:260px;border:0}.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;box-shadow:var(--shadow)}.form-card h2{font-family:'Barlow Condensed';font-size:1.8rem;color:var(--navy);margin-bottom:18px}.form-card label,.admin-form label{display:grid;gap:7px;margin-bottom:16px;font-weight:800;color:var(--navy);font-size:.9rem}.form-card input,.form-card textarea,.admin-form input,.admin-form textarea,.admin-form select{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--text);background:#fff}.form-card input:focus,.form-card textarea:focus,.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus{outline:none;border-color:var(--secondary)}
.site-footer{background:#07121F;color:rgba(255,255,255,.56);padding:58px 0 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:42px}.footer-brand{display:flex;align-items:center;gap:12px;color:#fff;font-family:'Barlow Condensed';font-size:1.3rem;margin-bottom:12px}.footer-brand img{width:44px;height:44px;border-radius:50%;object-fit:cover;background:#fff}.site-footer h4{color:#fff;font-size:.86rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px}.site-footer a{display:block;margin:8px 0;color:rgba(255,255,255,.56)}.site-footer a:hover{color:var(--amber2)}.footer-whatsapp{color:var(--amber2)!important;font-weight:800}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);text-align:center;margin-top:42px;padding:18px;color:rgba(255,255,255,.42);font-size:.82rem}
/* Admin */
.admin-body{background:#f2f5f9}.admin-sidebar{position:fixed;left:0;top:0;bottom:0;width:260px;background:var(--navy);color:#fff;padding:24px 14px;overflow:auto;box-shadow:12px 0 34px rgba(13,31,53,.15)}.admin-sidebar h2{font-family:'Barlow Condensed';font-size:1.35rem;margin:0 10px 22px}.admin-sidebar a{display:block;color:rgba(255,255,255,.68);padding:11px 12px;border-radius:10px;font-weight:700;font-size:.9rem;margin:2px 0}.admin-sidebar a:hover{background:rgba(255,255,255,.08);color:#fff}.admin-main{margin-left:260px;padding:34px}.login-main{margin-left:0;min-height:100vh;display:grid;place-items:center;background:var(--navy)}.admin-main h1{font-family:'Barlow Condensed';font-size:2.3rem;color:var(--navy);margin-bottom:24px}.admin-title-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}.admin-stats div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 8px 24px rgba(13,31,53,.04)}.admin-stats strong{display:block;font-family:'Barlow Condensed';font-size:2.4rem;color:var(--navy);line-height:1}.admin-stats span{font-size:.78rem;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.admin-panel,.admin-form,.admin-table{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 28px rgba(13,31,53,.04)}.admin-panel{padding:22px}.admin-form{padding:28px}.admin-form.two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.admin-form.narrow{max-width:520px}.admin-form .full{grid-column:1/-1}.check{display:flex!important;align-items:center;gap:10px}.check input{width:auto}.admin-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden}.admin-table th{text-align:left;background:#eaf1f8;color:var(--muted);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;padding:13px 16px}.admin-table td{padding:14px 16px;border-top:1px solid var(--line);vertical-align:top}.admin-table a{color:var(--secondary);font-weight:800}.admin-table button,.mini-card button{background:#ffe8e8;color:#9e1d1d;border:0;border-radius:8px;padding:7px 11px;font-weight:800;cursor:pointer}.inline{display:inline;margin-left:8px}.admin-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:22px}.mini-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;padding-bottom:14px}.mini-card img{width:100%;height:160px;object-fit:cover}.mini-card strong,.mini-card form{display:block;margin:12px}.login-card{background:#fff;width:min(430px,92%);border-radius:24px;padding:40px;box-shadow:0 30px 70px rgba(0,0,0,.25)}.login-card h1{color:var(--navy);margin-bottom:6px}.login-card p{color:var(--muted);margin-bottom:20px}
@media(max-width:1000px){.hero-grid,.split,.why-grid,.contact-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,1fr)}.project-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-card-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.brand span{font-size:1rem}.nav-toggle{display:flex}.main-nav{display:none;position:absolute;top:73px;left:0;right:0;background:var(--navy);padding:18px;flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{padding:12px;border-bottom:1px solid rgba(255,255,255,.08)}.hero{padding:80px 0}.hero h1{font-size:3.25rem}.card-grid,.project-grid,.gallery-grid,.why-cards,.content-grid,.meta-list,.stats-grid,.footer-grid{grid-template-columns:1fr}.cta-box{grid-template-columns:1fr}.admin-sidebar{position:relative;width:auto}.admin-main{margin-left:0;padding:22px}.admin-form.two-col{grid-template-columns:1fr}.admin-card-grid{grid-template-columns:1fr 1fr}.admin-table{display:block;overflow:auto}.row-between{align-items:flex-start}.section{padding:68px 0}}

/* v3 production polish */
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:90;background:#25D366;color:#fff;padding:13px 18px;border-radius:999px;font-weight:800;box-shadow:0 18px 38px rgba(0,0,0,.22);letter-spacing:.02em}
.whatsapp-float:hover{transform:translateY(-2px)}
.admin-note{background:#fff8e6;border-left:4px solid var(--secondary);padding:12px 14px;border-radius:10px;color:#48310c;margin:12px 0 18px}.btn.secondary{background:#eef4fb;color:var(--primary)}
.site-header{box-shadow:0 12px 28px rgba(0,0,0,.08)}
.project-card,.tool-card,.content-card,.service-card,.gallery-card,.admin-panel{box-shadow:0 10px 28px rgba(13,31,53,.06)}
@media(max-width:640px){.whatsapp-float{right:14px;bottom:14px;padding:11px 14px;font-size:.85rem}.brand span{font-size:.86rem}.hero-copy h1{font-size:2.7rem}}

/* v4 production/business credibility upgrades */
.case-study-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:24px;align-items:start}.case-study-grid .wide{grid-column:1/2}.case-meta{grid-column:2;grid-row:1 / span 3}.meta-list.vertical{grid-template-columns:1fr}.placeholder-visual{min-height:360px;display:grid;place-items:center;background:linear-gradient(135deg,#dbe8f3,#f7fbff);color:#6f8193;font-weight:900}.map-placeholder{margin-top:18px;background:#eef4fb;border:1px dashed var(--line);border-radius:16px;padding:20px;color:var(--muted);font-weight:700}.form-note{font-size:.78rem;color:var(--muted);margin-top:12px}.area-chips{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.area-chips a{background:#fff;border:1px solid var(--line);border-radius:999px;padding:10px 15px;font-weight:800;color:var(--primary);box-shadow:0 8px 22px rgba(13,31,53,.05)}.service-area-strip{padding:42px 0;background:#fff;border-bottom:1px solid var(--line)}.service-area-strip h2{font-size:clamp(1.6rem,3vw,2.4rem)}.admin-env-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}.admin-env-grid div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}.ok{color:#0b6b35}.warn{color:#9e1d1d}
@media(max-width:900px){.case-study-grid{grid-template-columns:1fr}.case-study-grid .wide,.case-meta{grid-column:auto;grid-row:auto}.area-chips{justify-content:flex-start}.admin-env-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.admin-env-grid{grid-template-columns:1fr}.service-area-strip{padding:34px 0}}

/* v5 verified credential sections */
.credentials-section{background:#fff}
.credential-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:18px}
.credential-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 10px 28px rgba(13,31,53,.06)}
.credential-card span{display:block;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--secondary);margin-bottom:8px}
.credential-card strong{display:block;font-family:'Barlow Condensed',sans-serif;font-size:1.25rem;line-height:1.15;color:var(--navy);word-break:break-word}
.credential-note{margin-top:18px;color:var(--muted);font-size:.92rem;line-height:1.7;max-width:920px}
.footer-credential{margin-top:10px;font-size:.78rem;color:rgba(255,255,255,.58)}
@media(max-width:960px){.credential-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.credential-grid{grid-template-columns:1fr}.credential-card{padding:18px}}


/* v6 privacy, typography and full admin control upgrades */
body{font-family:var(--body-font);font-size:var(--body-text-size)}
.brand,.main-nav a{font-family:var(--nav-font)}
.hero h1,.section h2,.page-hero h1,.content-card h2,.content-card h3,.service-card h3,.project-body h3,.footer-brand,.admin-main h1,.admin-section-title{font-family:var(--heading-font)}
.btn,.nav-cta{border-radius:var(--button-radius)}
.no-image-card .project-body{padding-top:28px;min-height:260px}.no-image-card{border-top:4px solid var(--secondary)}
.settings-admin h2.admin-section-title{grid-column:1/-1;font-size:1.18rem;margin:24px 0 10px;padding:12px 14px;background:var(--soft);border:1px solid var(--line);border-radius:12px;color:var(--navy)}
.settings-admin label small{font-weight:700;color:var(--muted);font-size:.72rem;margin-left:4px}.settings-admin .check{background:#f8fbff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:10px}.settings-admin .check input{accent-color:var(--secondary)}
.admin-form .btn.secondary{margin-left:10px;text-decoration:none}.admin-note strong{color:var(--navy)}
@media(max-width:720px){.admin-form .btn.secondary{margin-left:0;margin-top:10px}.hero-panel{max-width:420px}.hero-panel img{max-height:220px}.hero h1{font-size:clamp(2.4rem,12vw,3.2rem)}}

/* v7 field-level visibility admin controls */
.field-vis{display:flex;align-items:center;gap:8px;margin-top:7px;font-size:.78rem;font-weight:800;color:#46617d;background:#f5f9fd;border:1px solid var(--line);border-radius:9px;padding:8px 10px}
.field-vis input{width:auto!important}.admin-section-title{background:#f3f7fb;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:18px 0 14px}.visibility-dot{display:inline-block;width:8px;height:8px;border-radius:99px;background:#26a269;margin-right:6px}.visibility-dot.off{background:#c01c28}
.hero h1,.page-hero h1,.section h2{letter-spacing:-.035em}.service-card h2,.service-card h3,.project-body h2,.project-body h3{letter-spacing:-.02em}

/* v8 advanced CMS: preview, draft/publish, history and drag ordering */
.preview-banner{position:sticky;top:0;z-index:9999;background:#111827;color:#fff;text-align:center;padding:10px 16px;font-weight:800;letter-spacing:.02em;border-bottom:3px solid var(--secondary)}
.draft-outline{outline:2px dashed #d99021;outline-offset:-8px}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 10px;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;background:#eef4fb;color:#345}.pill.ok{background:#e8fff2;color:#0b6b35}.pill.warn{background:#fff6e6;color:#9a5b00}.btn-small{background:#eef4fb!important;color:var(--primary)!important;border:0;border-radius:8px;padding:8px 12px;font-weight:900;cursor:pointer}.admin-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}.drag-handle{cursor:grab;user-select:none;color:var(--secondary);font-weight:900}.sortable-table tr.dragging,.order-row.dragging,.mini-card.dragging{opacity:.45}.sortable-table tr.drop-target,.order-row.drop-target,.mini-card.drop-target{outline:2px dashed var(--secondary);outline-offset:-4px}.order-list{display:grid;gap:10px;margin:14px 0 34px}.order-row{display:grid;grid-template-columns:36px 1fr auto auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:0 8px 22px rgba(13,31,53,.04)}.order-row span:not(.drag-handle){color:var(--muted);font-weight:700;font-size:.85rem}.admin-title-row .btn{margin-left:8px}.mini-card .drag-handle{display:block;margin:12px 12px 0}.mini-card .pill{margin:8px 12px}.version-json{max-height:140px;overflow:auto;background:#f8fbff;border:1px solid var(--line);border-radius:8px;padding:10px;font-size:.78rem;white-space:pre-wrap}.admin-main h2{font-family:'Barlow Condensed',sans-serif;color:var(--navy);font-size:1.5rem;margin:28px 0 10px}
@media(max-width:720px){.order-row{grid-template-columns:32px 1fr}.order-row span:not(.drag-handle){grid-column:2}.admin-actions .btn{width:100%}.admin-title-row{display:block}.admin-title-row .btn{margin:6px 6px 0 0}}

/* v9 advanced CMS controls */
.field-control-box{margin-top:8px;padding:10px;border:1px dashed var(--line,#d8e6f0);border-radius:12px;background:rgba(245,248,252,.8)}
.field-control-box .field-vis{display:flex;align-items:center;gap:8px;font-size:.86rem;font-weight:700;color:var(--text,#1C2E3F)}
.style-details{margin-top:8px}.style-details summary{cursor:pointer;font-size:.78rem;font-weight:800;color:var(--secondary,#C4822A);text-transform:uppercase;letter-spacing:.08em}
.style-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}.style-grid label{font-size:.76rem}.style-grid input,.style-grid select{width:100%;min-height:34px;padding:6px 8px;border:1px solid var(--line,#d8e6f0);border-radius:8px;background:#fff}.style-grid .check{display:flex;align-items:center;gap:8px}.style-grid .check input{width:auto;min-height:auto}
.wysiwyg-editor{font-family:ui-monospace,Consolas,monospace}.page-builder-section{background:var(--soft,#F5F8FC)}.page-block{background:#fff;border:1px solid var(--line,#D8E6F0);border-radius:20px;padding:30px;margin:18px 0;box-shadow:0 16px 36px rgba(13,31,53,.07)}.page-block img{max-height:360px;width:100%;object-fit:cover;border-radius:16px;margin-bottom:18px}.wysiwyg-content ul,.wysiwyg-content ol{padding-left:22px}.diff-wrap{overflow:auto;background:#fff;border:1px solid var(--line,#D8E6F0);border-radius:16px;padding:14px}.diff-wrap table{font-family:ui-monospace,Consolas,monospace;font-size:12px;width:100%}
@media(max-width:900px){.style-grid{grid-template-columns:1fr}.field-control-box{padding:8px}}
/* v10 admin stability + advanced CMS additions */
.builder-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:22px;align-items:start}
.builder-preview-panel{position:sticky;top:22px}
.visual-canvas{background:#fff;border:1px solid var(--line,#d8e6f0);border-radius:18px;padding:28px;margin:16px 0;box-shadow:0 14px 40px rgba(13,31,53,.08)}
.visual-canvas h2{margin:0 0 12px;color:var(--primary,#0D1F35);font-size:clamp(1.6rem,3vw,2.5rem)}
.visual-canvas div{color:var(--muted,#5A7089);line-height:1.7;margin-bottom:18px}
.preview-frame{width:100%;height:420px;border:1px solid var(--line,#d8e6f0);border-radius:18px;background:#fff}
.media-grid .mini-card img{background:#eef5fb}
.crop-form .style-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}
.crop-form input{width:100%}
@media(max-width:1000px){.builder-layout{grid-template-columns:1fr}.builder-preview-panel{position:static}.preview-frame{height:320px}.crop-form .style-grid{grid-template-columns:repeat(2,1fr)}}

/* v14 top-level cleanup: admin simple/advanced mode, cleaner public states */
.hero h1{font-size:var(--hero-title-size,clamp(2.35rem,4.7vw,4.1rem))!important;max-width:780px}.hero-actions .btn,.cta-box .btn{width:auto;min-width:0;max-width:max-content;white-space:normal}.cta-box{grid-template-columns:minmax(0,1fr) max-content}.clean-placeholder{background:#f3f7fb;color:#78889a}.public-empty{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;box-shadow:0 10px 28px rgba(13,31,53,.05);max-width:760px}.public-empty h2{font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:8px;color:var(--navy)}.public-empty p{color:var(--muted);margin-bottom:18px}.gallery-card h3{padding:18px 18px 6px;color:var(--navy);font-family:var(--heading-font)}.gallery-card p{padding:0 18px 18px;color:var(--muted)}
.mode-box{display:grid;gap:6px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:10px 12px;margin:10px 0 14px;color:rgba(255,255,255,.75);font-size:.82rem}.mode-box a{padding:0!important;color:#fff!important;font-weight:900}.compact-panel{padding-top:18px;padding-bottom:18px}.admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.admin-tabs a{background:#eef4fb;border:1px solid var(--line);color:var(--primary);border-radius:999px;padding:9px 13px;font-size:.82rem;font-weight:900}.settings-section{border:1px solid var(--line);border-radius:16px;background:#fff;margin-bottom:16px;overflow:hidden}.settings-section>summary{cursor:pointer;padding:16px 18px;font-weight:900;color:var(--navy);background:#f5f8fc;border-bottom:1px solid var(--line);list-style:none}.settings-section>summary::-webkit-details-marker{display:none}.settings-section>summary:after{content:'+';float:right}.settings-section[open]>summary:after{content:'–'}.settings-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px}.settings-section-grid>.full,.settings-section .full{grid-column:1/-1}.field-control-box.compact{padding:7px 8px;background:#f8fbff}.field-control-box.compact .field-vis{margin:0;padding:6px 8px;font-size:.78rem}.style-details summary{font-size:.75rem}.sticky-actions{position:sticky;bottom:0;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:14px;padding:12px;margin-top:16px;box-shadow:0 -8px 24px rgba(13,31,53,.06)}.check-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.check-row{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:10px 0;background:#fff}.check-row strong{display:block;color:var(--navy)}.check-row span{font-size:.78rem;font-weight:900;text-transform:uppercase}.check-row small{display:block;color:var(--muted);margin-top:4px}.check-row.done{border-left:5px solid #26a269}.check-row.done span{color:#0b6b35}.check-row.missing{border-left:5px solid #c01c28}.check-row.missing span{color:#9e1d1d}.admin-summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}.admin-summary-grid div{background:#f8fbff;border:1px solid var(--line);border-radius:12px;padding:14px}.admin-summary-grid strong{display:block;font-size:1.8rem;color:var(--navy)}.admin-summary-grid span{font-weight:900;color:var(--muted);font-size:.78rem;text-transform:uppercase}.warning-panel{border-left:6px solid var(--secondary)}.empty-state{background:#f8fbff;border:1px dashed var(--line);border-radius:16px;padding:24px;color:var(--muted)}.danger-link{background:#fff0f0;color:#9e1d1d;border:1px solid #ffc8c8;border-radius:8px;padding:8px 12px;font-weight:900;cursor:pointer}.admin-sidebar a{line-height:1.25}.admin-main .admin-note{font-size:.9rem}.media-grid .mini-card .pill.warn{display:inline-flex;margin-top:8px}.builder-preview-panel .preview-frame{display:none}
@media(max-width:900px){.settings-section-grid,.check-columns{grid-template-columns:1fr}.cta-box{grid-template-columns:1fr}.hero-actions .btn,.cta-box .btn{max-width:100%}}
@media(max-width:720px){.hero h1{font-size:clamp(2.15rem,10vw,3.25rem)!important}.admin-tabs a{width:100%;text-align:center}.sticky-actions{position:static}.check-columns{grid-template-columns:1fr}}


/* V14.3: Gallery images should show fully and open in a new tab. */
.gallery-card-full{display:flex;flex-direction:column}
.gallery-image-link{display:block;position:relative;background:#f8fbff;text-decoration:none;color:inherit;border-bottom:1px solid var(--line)}
.gallery-image-frame{display:flex;align-items:center;justify-content:center;width:100%;height:300px;background:#f8fbff;overflow:hidden}
.gallery-card-full .gallery-image-frame img{width:100%;height:100%;object-fit:contain!important;display:block;padding:0;background:#f8fbff}
.gallery-open-label{position:absolute;right:12px;bottom:12px;background:rgba(13,31,53,.86);color:#fff;border-radius:999px;padding:7px 11px;font-size:.78rem;font-weight:800;opacity:0;transform:translateY(4px);transition:.2s ease}
.gallery-image-link:hover .gallery-open-label,.gallery-image-link:focus .gallery-open-label{opacity:1;transform:translateY(0)}
@media(max-width:720px){.gallery-image-frame{height:240px}.gallery-open-label{opacity:1}}
.admin-inline-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-inline-actions form{display:inline;margin:0}.admin-inline-actions .btn.secondary{background:#eef4fb;color:var(--navy);border:1px solid var(--line);text-decoration:none}.admin-inline-actions .small{padding:8px 12px;border-radius:8px;font-weight:900}.admin-inline-actions .danger{background:#fff0f0!important;color:#9e1d1d!important}.muted{color:var(--muted);font-size:.82rem}.checkline{display:flex!important;align-items:center;gap:10px}.checkline input{width:auto!important}

/* V14.6 Admin Sidebar UX Cleanup */
.pro-sidebar{width:285px;padding:18px 12px 22px;background:#0b2035}.admin-main{margin-left:285px}.admin-brand-block{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin:2px 8px 12px}.admin-brand-block h2{margin:0;font-size:1.25rem;line-height:1.1}.admin-role-chip{display:inline-flex;align-items:center;background:rgba(230,157,49,.18);border:1px solid rgba(230,157,49,.35);color:#ffd18a;border-radius:999px;padding:4px 8px;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.pro-mode-box{margin:10px 2px 12px}.sidebar-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 2px 14px}.sidebar-actions a{display:flex!important;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#fff!important;border-radius:10px;padding:9px 8px!important;margin:0!important;font-size:.78rem!important;text-align:center}.sidebar-actions a.primary{background:var(--secondary);border-color:var(--secondary);color:#fff!important}.admin-nav-pro{display:grid;gap:9px}.admin-nav-pro .nav-section{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);border-radius:13px;overflow:hidden}.admin-nav-pro .nav-section summary{cursor:pointer;list-style:none;padding:11px 12px;color:#fff;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.075em;display:flex;justify-content:space-between;align-items:center}.admin-nav-pro .nav-section summary::-webkit-details-marker{display:none}.admin-nav-pro .nav-section summary:after{content:'+';font-size:1rem;opacity:.7}.admin-nav-pro .nav-section[open] summary:after{content:'–'}.admin-nav-pro .nav-section a{display:block;margin:0 8px 6px!important;padding:9px 10px!important;border-radius:9px;color:rgba(255,255,255,.72);font-size:.84rem!important;font-weight:800}.admin-nav-pro .nav-section a:hover,.admin-nav-pro .nav-section a.active{background:rgba(255,255,255,.12);color:#fff!important}.admin-nav-pro .nav-section a.active{box-shadow:inset 3px 0 0 var(--secondary)}.nav-muted-box{background:rgba(255,255,255,.06);border:1px dashed rgba(255,255,255,.18);border-radius:12px;padding:10px 12px;color:rgba(255,255,255,.68);font-size:.78rem;line-height:1.4}.nav-muted-box a{display:block!important;color:#fff!important;padding:6px 0 0!important;margin:0!important;font-size:.78rem!important}.admin-sidebar::-webkit-scrollbar{width:7px}.admin-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:999px}@media(max-width:720px){.pro-sidebar{width:auto}.admin-main{margin-left:0}.admin-nav-pro{grid-template-columns:1fr}.sidebar-actions{grid-template-columns:1fr 1fr}}

/* V14.8 admin page UX cleanup */
.admin-main{max-width:1720px}.admin-main h1{letter-spacing:-.01em}.admin-form.ux-clean-form{padding:22px}.ux-guide{border-left:5px solid var(--secondary)}.ux-subnote{grid-column:1/-1;background:#fff8e8;border:1px solid #f4ddb0;border-radius:12px;color:#6d4300;font-size:.86rem;line-height:1.45;padding:10px 12px;margin:14px 18px 0}.settings-subgroup{padding:10px 18px 18px;border-top:1px solid var(--line)}.settings-subgroup:first-of-type{border-top:0}.settings-subgroup h3{font-family:'Inter',sans-serif!important;font-size:.82rem!important;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 10px!important}.compact-checks{gap:10px!important}.compact-checks .check{min-height:42px;margin:0!important;background:#f8fbff;border:1px solid var(--line);border-radius:12px;padding:10px 12px}.nested-groups{display:grid;gap:12px;padding:16px 18px 18px}.inner-section{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.inner-section>summary{cursor:pointer;background:#f8fbff;padding:13px 15px;font-weight:900;color:var(--navy);list-style:none}.inner-section>summary::-webkit-details-marker{display:none}.inner-section>summary:after{content:'+';float:right}.inner-section[open]>summary:after{content:'–'}.inner-section .settings-section-grid{padding:15px}.field-control-box.compact{margin-top:5px;padding:0!important;border:0!important;background:transparent!important}.field-control-box.compact .field-vis{display:inline-flex!important;width:auto;background:#f8fbff;border:1px solid var(--line);border-radius:999px;padding:5px 9px!important;font-size:.76rem!important;font-weight:900}.field-control-box.compact.style-only{margin-top:3px}.field-control-box.compact.style-only .style-details>summary{display:inline-flex;background:#fff8e8;border:1px solid #f4ddb0;border-radius:999px;padding:4px 9px;color:#9a5b00;font-size:.72rem;text-transform:none;letter-spacing:0}.style-details{margin-top:4px}.style-details>summary{cursor:pointer;color:#9a5b00;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.style-grid{grid-template-columns:repeat(3,minmax(0,1fr));background:#f8fbff;border:1px solid var(--line);border-radius:12px;margin-top:8px;padding:12px}.style-grid label{margin-bottom:0}.settings-section-grid label{margin-bottom:6px}.sticky-actions .btn{min-width:145px}.admin-tabs{position:sticky;top:0;z-index:3;background:rgba(242,245,249,.94);backdrop-filter:blur(8px);padding:8px 0}.admin-tabs a{text-decoration:none}.admin-tabs a:hover{background:#fff;border-color:var(--secondary)}.admin-table td,.admin-table th{padding:12px 14px}.admin-table td:nth-child(2){min-width:220px}.order-list{gap:8px}.order-row{padding:12px 14px}.builder-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:20px;align-items:start}.builder-preview-panel{position:sticky;top:20px}.builder-form .settings-section{box-shadow:none}.nav-section a[href*="appearance"]::after,.nav-section a[href*="ordering"]::after,.nav-section a[href*="page-builder"]::after{content:' Advanced';display:inline-block;margin-left:6px;color:#ffd18a;font-size:.65rem;font-weight:900;opacity:.9}
@media(max-width:1100px){.style-grid{grid-template-columns:1fr 1fr}.builder-layout{grid-template-columns:1fr}.builder-preview-panel{position:static}}
@media(max-width:720px){.style-grid{grid-template-columns:1fr}.settings-subgroup{padding:10px 12px}.nested-groups{padding:12px}.compact-checks .check{min-height:auto}.sticky-actions .btn{width:100%}}


/* V14.9 Live Edit overlay */
.live-edit-toolbar{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:9999;display:flex;align-items:center;gap:8px;max-width:min(1100px,94vw);padding:10px 12px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(7,18,31,.94);box-shadow:0 18px 50px rgba(0,0,0,.28);color:#fff;font-family:var(--body-font,system-ui,sans-serif)}
.live-edit-toolbar strong{padding:8px 10px;border-radius:10px;background:rgba(232,160,70,.22);color:#ffd38a;letter-spacing:.04em;text-transform:uppercase;font-size:.75rem}
.live-edit-toolbar a{color:#eaf3ff;text-decoration:none;padding:8px 10px;border-radius:10px;font-size:.86rem;font-weight:700;white-space:nowrap}
.live-edit-toolbar a.active,.live-edit-toolbar a:hover{background:rgba(255,255,255,.12)}
.live-edit-toolbar a.exit{background:#e8a046;color:#07121f;margin-left:4px}
.live-edit-status{font-size:.82rem;color:#cbd8e6;padding:0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}
.live-edit-status[data-state="saved"]{color:#7ee2a8}.live-edit-status[data-state="error"]{color:#ffb2b2}.live-edit-status[data-state="saving"]{color:#ffd38a}
.live-edit-field{outline:2px dashed rgba(232,160,70,.55)!important;outline-offset:5px;border-radius:8px;cursor:text;transition:outline-color .15s, background .15s, box-shadow .15s;min-height:1em}
.live-edit-field:hover{background:rgba(232,160,70,.10)}
.live-edit-field.live-edit-active{outline:3px solid #e8a046!important;background:rgba(255,255,255,.08);box-shadow:0 0 0 6px rgba(232,160,70,.12)}
.live-edit-field.live-edit-saving{opacity:.72}.live-edit-field.live-edit-saved{outline-color:#2fbf71!important}.live-edit-field.live-edit-error{outline-color:#d7263d!important;background:rgba(215,38,61,.08)}
body:has(.live-edit-toolbar){padding-bottom:84px}
@media(max-width:760px){.live-edit-toolbar{left:8px;right:8px;bottom:8px;transform:none;overflow-x:auto}.live-edit-status{display:none}}

/* V15 Design Center UX */
.design-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;border-left:5px solid var(--secondary)}
.design-intro p{margin-top:4px;color:var(--muted)}.design-intro-actions{display:flex;gap:10px;flex-wrap:wrap}.design-center-form{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.design-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px;align-items:start}.design-side-panel{position:sticky;top:12px;display:grid;gap:14px}.design-jump{background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:0 10px 30px rgba(13,31,53,.06);display:grid;gap:6px}.design-jump a{display:flex;padding:10px 12px;border-radius:11px;color:var(--navy);font-weight:900;font-size:.86rem}.design-jump a:hover{background:#f4f8fc}.design-preview-box{--preview-primary:#0D1F35;--preview-secondary:#C4822A;--preview-accent:#E8A046;--preview-header:#0D1F35;--preview-footer:#07121F;--preview-body:#fff;--preview-soft:#F5F8FC;--preview-card:#fff;--preview-text:#1C2E3F;--preview-muted:#5A7089;--preview-line:#D8E6F0;--preview-button-text:#fff;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:0 10px 30px rgba(13,31,53,.06)}.design-preview-label{display:block;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.72rem;font-weight:900;margin-bottom:10px}.mini-site-preview{border:1px solid var(--preview-line);border-radius:15px;overflow:hidden;background:var(--preview-body);color:var(--preview-text)}.mini-header{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--preview-header);color:#fff;padding:10px;font-size:.75rem;font-weight:900}.mini-logo{background:#fff;color:var(--preview-header);border-radius:999px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}.mini-contact{background:var(--preview-accent);color:var(--preview-button-text);padding:5px 8px;border-radius:8px}.mini-hero{background:var(--preview-primary);color:#fff;padding:18px}.mini-badge{display:inline-flex;background:rgba(255,255,255,.10);color:var(--preview-accent);border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:4px 8px;font-size:.58rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.mini-hero h2{font-size:1.35rem;line-height:1.05;margin:12px 0 7px;color:#fff}.mini-hero p{font-size:.78rem;color:rgba(255,255,255,.7);line-height:1.4}.mini-hero button{margin-top:12px;border:0;border-radius:10px;background:var(--preview-accent);color:var(--preview-button-text);font-weight:900;padding:8px 10px;font-size:.76rem}.mini-card{margin:12px;border:1px solid var(--preview-line);border-radius:14px;background:var(--preview-card);padding:13px}.mini-card p{font-size:.75rem;color:var(--preview-muted);line-height:1.4}.design-main-panel{display:grid;gap:16px}.design-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 10px 30px rgba(13,31,53,.05)}.design-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px;border-bottom:1px solid var(--line);padding-bottom:14px}.design-card-head h2{font-family:Inter,system-ui,sans-serif!important;font-size:1.15rem!important;color:var(--navy)!important;margin:0!important}.design-card-head p{max-width:520px;color:var(--muted);font-size:.86rem;line-height:1.45}.design-kicker{display:block;color:var(--secondary);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.theme-preset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.theme-preset{border:1px solid var(--line);border-radius:16px;background:#f8fbff;padding:14px;text-align:left;cursor:pointer;transition:.18s}.theme-preset:hover,.theme-preset.active{border-color:var(--secondary);box-shadow:0 10px 25px rgba(13,31,53,.08);transform:translateY(-2px)}.theme-preset strong{display:block;margin:8px 0 2px;color:var(--navy)}.theme-preset small{color:var(--muted);font-weight:800}.preset-swatch{display:block;width:100%;height:34px;border-radius:12px}.preset-swatch.navy{background:linear-gradient(90deg,#0D1F35 0 45%,#C4822A 45% 70%,#F5F8FC 70%)}.preset-swatch.blue{background:linear-gradient(90deg,#08233A 0 45%,#26A9E0 45% 70%,#EAF4FA 70%)}.preset-swatch.gold{background:linear-gradient(90deg,#FAFAF8 0 45%,#B7791F 45% 70%,#111827 70%)}.preset-swatch.dark{background:linear-gradient(90deg,#07111F 0 45%,#E59A2F 45% 70%,#EDF2F7 70%)}.design-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.design-grid label,.design-card label{font-weight:900;color:var(--navy);font-size:.84rem}.design-grid input,.design-grid select,.design-grid textarea,.design-card textarea{width:100%;margin-top:6px}.design-grid .wide,.design-card .wide{grid-column:1/-1}.color-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.color-control{background:#f8fbff;border:1px solid var(--line);border-radius:14px;padding:12px}.color-control>div{display:flex;gap:8px;align-items:center}.color-control input[type=color]{width:48px;height:38px;padding:2px;border-radius:10px;cursor:pointer}.hex-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}.toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.switch-row{display:flex!important;align-items:center;gap:10px;background:#f8fbff;border:1px solid var(--line);border-radius:13px;padding:11px 12px!important;margin:0!important;min-height:46px}.switch-row input{width:auto!important;margin:0!important}.switch-row span{font-weight:900;color:var(--navy);font-size:.86rem}.design-accordion{display:grid;gap:10px}.design-subcard{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.design-subcard>summary{cursor:pointer;list-style:none;background:#f8fbff;padding:13px 15px;font-weight:900;color:var(--navy)}.design-subcard>summary::-webkit-details-marker{display:none}.design-subcard>summary:after{content:'+';float:right}.design-subcard[open]>summary:after{content:'–'}.design-subcard .design-grid{padding:15px}.design-savebar{position:sticky;bottom:0;z-index:6;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:18px;padding:12px;display:flex;gap:10px;align-items:center;box-shadow:0 -8px 30px rgba(13,31,53,.08)}.hidden-style-state{display:none!important}.nav-section a[href*="appearance"]::after{content:' Design';display:inline-block;margin-left:6px;color:#ffd18a;font-size:.65rem;font-weight:900;opacity:.9}
@media(max-width:1180px){.design-layout{grid-template-columns:1fr}.design-side-panel{position:static}.design-jump{grid-template-columns:repeat(3,1fr)}.design-preview-box{display:none}.theme-preset-grid{grid-template-columns:repeat(2,1fr)}.color-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.design-intro{display:block}.design-intro-actions{margin-top:12px}.design-jump{grid-template-columns:1fr}.theme-preset-grid,.design-grid,.color-grid,.toggle-grid{grid-template-columns:1fr}.design-card-head{display:block}.design-savebar{position:static}.design-savebar .btn{width:100%}}


/* V15.1 - cleaner content editor pages */
.clean-title-row{align-items:flex-start;margin-bottom:16px}.clean-title-row .eyebrow{margin:0 0 4px;color:var(--secondary,#C4822A);font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.clean-title-row .page-help{margin:6px 0 0;max-width:760px;color:var(--muted,#5A7089);line-height:1.55}.title-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.clean-content-form{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}.content-editor-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px;align-items:start}.content-help-card{position:sticky;top:16px;background:#fff;border:1px solid var(--line,#D8E6F0);border-radius:18px;padding:18px;box-shadow:0 10px 30px rgba(13,31,53,.05)}.content-help-card h2{font-family:Inter,system-ui,sans-serif!important;font-size:1.05rem!important;margin:0 0 10px!important;color:var(--navy,#0D1F35)!important}.content-help-card ul{margin:0 0 14px 18px;padding:0;color:var(--muted,#5A7089);line-height:1.55}.content-help-card li{margin-bottom:6px}.mini-flow{display:flex;gap:7px;flex-wrap:wrap;align-items:center;background:#fff8e8;border:1px solid #f4ddb0;border-radius:14px;padding:10px;font-size:.78rem;font-weight:900;color:#6d4300}.content-main-stack{display:grid;gap:16px}.clean-section{background:#fff;border:1px solid var(--line,#D8E6F0);border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(13,31,53,.045)}.clean-section>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;background:#f5f8fc;padding:16px 18px;border-bottom:1px solid var(--line,#D8E6F0);font-weight:900;color:var(--navy,#0D1F35)}.clean-section>summary::-webkit-details-marker{display:none}.clean-section>summary:after{content:'+';font-size:1.05rem;color:var(--muted,#5A7089)}.clean-section[open]>summary:after{content:'–'}.clean-section>summary span{font-size:1rem}.clean-section>summary small{margin-left:auto;color:var(--muted,#5A7089);font-size:.78rem;font-weight:800}.clean-field-stack{display:grid;gap:14px;padding:18px}.content-field-card{background:#fbfdff;border:1px solid var(--line,#D8E6F0);border-radius:15px;padding:14px}.content-field-card textarea,.content-field-card input{margin-top:10px;background:#fff}.field-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.field-head label,.content-field-card>label{font-weight:900;color:var(--navy,#0D1F35)}.field-head p{margin:4px 0 0;color:var(--muted,#5A7089);font-size:.82rem;line-height:1.45}.inline-toggle{display:inline-flex!important;align-items:center;gap:7px;white-space:nowrap;background:#eef6ff;border:1px solid var(--line,#D8E6F0);border-radius:999px;padding:6px 10px!important;margin:0!important;font-size:.78rem!important;font-weight:900;color:var(--navy,#0D1F35)}.inline-toggle input{width:auto!important;margin:0!important}.stats-grid-clean{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px}.compact-stat .field-head{align-items:center}.clean-actions{margin-left:322px}.field-control-box .style-details:not([open]) .style-grid{display:none!important}.admin-nav-pro .nav-section[open]{background:rgba(255,255,255,.07)}
@media(max-width:980px){.content-editor-grid{grid-template-columns:1fr}.content-help-card{position:static}.clean-actions{margin-left:0}.stats-grid-clean{grid-template-columns:1fr}.title-actions{justify-content:flex-start}}

/* V15.2 Full Live Editor shell */
.live-editor-shell{position:fixed;inset:0;pointer-events:none;z-index:9998;font-family:var(--body-font,system-ui,sans-serif)}
.live-page-panel{position:fixed;left:14px;top:84px;width:190px;max-height:calc(100vh - 170px);overflow:auto;pointer-events:auto;background:rgba(7,18,31,.96);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:12px;box-shadow:0 20px 60px rgba(0,0,0,.35);color:#fff}
.live-page-panel strong{display:block;font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:#ffd38a;margin:4px 8px 10px}
.live-page-panel a,.live-page-panel button{display:block;width:100%;text-align:left;text-decoration:none;border:0;border-radius:11px;padding:9px 10px;margin:3px 0;background:transparent;color:#eaf3ff;font-weight:800;font-size:.86rem;cursor:pointer}
.live-page-panel a.active,.live-page-panel a:hover,.live-page-panel button:hover{background:rgba(255,255,255,.12)}
.live-page-panel hr{border:0;border-top:1px solid rgba(255,255,255,.14);margin:10px 0}
.live-edit-toolbar{position:fixed!important;left:230px!important;right:18px!important;bottom:16px!important;transform:none!important;z-index:9999!important;display:flex!important;align-items:center!important;gap:8px!important;max-width:none!important;padding:10px 12px!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:16px!important;background:rgba(7,18,31,.96)!important;box-shadow:0 18px 50px rgba(0,0,0,.32)!important;color:#fff!important;pointer-events:auto!important;overflow-x:auto!important}
.live-edit-toolbar strong{padding:8px 10px;border-radius:10px;background:rgba(232,160,70,.22);color:#ffd38a;letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;white-space:nowrap}
.live-edit-toolbar button,.live-edit-toolbar a,.live-edit-toolbar select,.live-edit-toolbar input[type="text"]{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;border-radius:10px;padding:8px 10px;font-weight:800;text-decoration:none;white-space:nowrap;height:38px}
.live-edit-toolbar select option{color:#07121f;background:#fff}.live-edit-toolbar input[type="text"]{width:112px}.live-edit-toolbar input[type="color"]{width:42px;height:38px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(255,255,255,.08);padding:4px;cursor:pointer}.live-edit-toolbar a.exit{background:#e8a046!important;color:#07121f!important}
.live-edit-status{margin-left:auto;font-size:.82rem;color:#cbd8e6;padding:0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.live-edit-status[data-state="saved"]{color:#7ee2a8}.live-edit-status[data-state="error"]{color:#ffb2b2}.live-edit-status[data-state="saving"]{color:#ffd38a}.live-edit-status[data-state="editing"]{color:#b7d9ff}
.live-edit-field{outline:2px dashed rgba(232,160,70,.55)!important;outline-offset:5px;border-radius:8px;cursor:text;transition:outline-color .15s, background .15s, box-shadow .15s;min-height:1em}.live-edit-field:hover{background:rgba(232,160,70,.10)}.live-edit-field.live-edit-active{outline:3px solid #e8a046!important;background:rgba(255,255,255,.08);box-shadow:0 0 0 6px rgba(232,160,70,.14)}.live-edit-field.live-edit-saving{opacity:.72}.live-edit-field.live-edit-saved{outline-color:#2fbf71!important}.live-edit-field.live-edit-error{outline-color:#d7263d!important;background:rgba(215,38,61,.08)}
.live-modal-backdrop{position:fixed;inset:0;background:rgba(5,12,22,.66);z-index:10000;display:grid;place-items:center;padding:20px}.live-modal{width:min(680px,94vw);max-height:86vh;overflow:auto;background:#fff;color:#0d1f35;border-radius:20px;border:1px solid #d8e6f0;box-shadow:0 30px 100px rgba(0,0,0,.38);padding:22px;position:relative}.live-modal h2{margin:0 0 14px}.live-modal form{display:grid;gap:12px}.live-modal label{display:grid;gap:6px;font-weight:800}.live-modal input,.live-modal textarea{width:100%;border:1px solid #d8e6f0;border-radius:10px;padding:11px 12px}.live-modal-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:50%;border:1px solid #d8e6f0;background:#f5f8fc;font-size:20px;cursor:pointer}
body:has(.live-edit-toolbar){padding-bottom:96px}.preview-banner{padding-left:230px}
@media(max-width:900px){.live-page-panel{display:none}.live-edit-toolbar{left:8px!important;right:8px!important;bottom:8px!important}.live-edit-toolbar strong{display:none}.live-edit-status{display:none}.preview-banner{padding-left:12px}}

/* V15.2.1 stable side-panel live editor fix */
.live-edit-toolbar input[type="text"],
.live-edit-toolbar select,
.live-edit-toolbar button,
.live-edit-toolbar a{
  position:static!important;
  max-width:180px!important;
  box-shadow:none!important;
  appearance:none;
}
.live-edit-toolbar input[type="text"]{
  width:118px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
}
.live-editor-sidepanel{
  position:fixed;
  right:18px;
  top:92px;
  width:min(420px,calc(100vw - 260px));
  z-index:10001;
  pointer-events:auto;
  background:#ffffff;
  color:#0d1f35;
  border:1px solid #d8e6f0;
  border-radius:18px;
  box-shadow:0 24px 80px rgba(0,0,0,.35);
  padding:16px;
  font-family:var(--body-font,system-ui,sans-serif);
}
.live-editor-sidepanel[hidden]{display:none!important}
.live-editor-sidepanel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;border-bottom:1px solid #d8e6f0;padding-bottom:10px}
.live-editor-sidepanel-head small{display:block;text-transform:uppercase;letter-spacing:.08em;color:#5a7089;font-weight:900;font-size:.7rem;margin-bottom:2px}
.live-editor-sidepanel-head strong{display:block;font-size:.92rem;color:#0d1f35;overflow:hidden;text-overflow:ellipsis;max-width:310px;white-space:nowrap}
.live-editor-sidepanel-head button{width:34px;height:34px;border-radius:999px;border:1px solid #d8e6f0;background:#f5f8fc;color:#0d1f35;font-size:20px;line-height:1;cursor:pointer}
.live-editor-panel-label{display:block;font-weight:900;margin-bottom:7px;color:#0d1f35}
.live-editor-sidepanel textarea{width:100%;min-height:150px;resize:vertical;border:1px solid #d8e6f0;border-radius:12px;padding:12px;color:#0d1f35;background:#fff;font:inherit;line-height:1.5;outline:none}
.live-editor-sidepanel textarea:focus{border-color:#e8a046;box-shadow:0 0 0 4px rgba(232,160,70,.16)}
.live-editor-panel-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.live-editor-panel-actions button{border:0;border-radius:10px;padding:10px 14px;font-weight:900;cursor:pointer}
.live-editor-panel-actions [data-panel-save]{background:#e8a046;color:#07121f}
.live-editor-panel-actions [data-panel-cancel]{background:#eef4fb;color:#0d1f35}
.live-editor-panel-help{margin:12px 0 0;color:#5a7089;font-size:.82rem;line-height:1.45}
.live-edit-field{cursor:pointer!important;user-select:none}.live-edit-field.live-edit-active{user-select:auto}
@media(max-width:900px){.live-editor-sidepanel{left:8px;right:8px;top:76px;width:auto}.live-edit-toolbar input[type="text"]{width:96px!important}}


/* V15.3 Design Center preview/button fixes */
.design-savebar{justify-content:flex-start!important;flex-wrap:wrap!important;min-height:70px!important}
.design-savebar .btn{min-width:150px!important;text-decoration:none!important;opacity:1!important;visibility:visible!important}
.design-savebar .btn-primary{background:linear-gradient(135deg,var(--secondary),var(--amber2))!important;color:#fff!important;border:1px solid transparent!important;box-shadow:0 12px 26px rgba(196,130,42,.22)!important}
.design-savebar .btn.secondary{background:#eef4fb!important;color:var(--navy)!important;border:1px solid var(--line)!important;box-shadow:none!important}
.design-savebar .btn.ghost{background:#fff!important;color:var(--navy)!important;border:1px solid var(--line)!important;box-shadow:none!important}
.design-savebar .btn:disabled{opacity:.55!important;cursor:not-allowed!important}
.draft-design-note{background:#fff8e8;border:1px solid #f4ddb0;border-left:4px solid var(--secondary);border-radius:12px;color:#6d4300;font-weight:800;line-height:1.45;padding:11px 13px;margin:0 0 16px}
.design-intro-actions .btn{white-space:nowrap}
@media(max-width:720px){.design-savebar .btn{width:100%!important}.design-intro-actions .btn{width:100%}}

/* V15.4 Portal / My Workspace */
.nav-login{display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;background:rgba(255,255,255,.12);color:#fff!important;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:10px 14px!important;font-weight:900;white-space:nowrap;transition:.18s ease}
.nav-login:hover{background:var(--secondary,#C4822A);border-color:var(--secondary,#C4822A);color:#07121f!important;transform:translateY(-1px)}
.portal-hero{background:linear-gradient(135deg,var(--primary,#0D1F35),var(--header-bg,#152C47));color:#fff;padding:66px 0 46px;border-bottom:1px solid rgba(255,255,255,.08)}
.portal-hero.compact{padding:44px 0 34px}.portal-hero-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.portal-hero h1{font-size:clamp(2rem,4vw,3.8rem);margin:6px 0 10px;color:#fff}.portal-hero p{max-width:720px;color:#d9e6f2;line-height:1.6}.portal-user-card{min-width:230px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:18px;text-align:left;box-shadow:0 16px 42px rgba(0,0,0,.18)}.portal-user-card span,.portal-user-card small{display:block;color:#b8cadb;font-weight:800}.portal-user-card strong{display:block;font-size:1.35rem;color:#fff;margin:5px 0}.portal-user-card a{display:inline-block;margin-top:12px;color:#ffd38a;font-weight:900;text-decoration:none}.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.portal-module-card{display:block;background:#fff;border:1px solid var(--line,#D8E6F0);border-radius:22px;padding:22px;text-decoration:none;color:var(--text,#1C2E3F);box-shadow:0 12px 36px rgba(13,31,53,.07);transition:.18s ease;min-height:210px}.portal-module-card:hover{transform:translateY(-3px);box-shadow:0 22px 54px rgba(13,31,53,.13);border-color:rgba(196,130,42,.45)}.portal-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:#fff5df;font-size:1.55rem;margin-bottom:16px}.portal-module-card h2{margin:0 0 8px;color:var(--primary,#0D1F35);font-size:1.25rem}.portal-module-card p{color:var(--muted,#5A7089);line-height:1.55;margin:0 0 18px}.portal-module-card strong{color:var(--secondary,#C4822A)}.portal-placeholder-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.portal-placeholder-grid ul{margin:0 0 0 18px;line-height:1.8;color:var(--muted,#5A7089)}
@media(max-width:980px){.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-hero-inner{align-items:flex-start;flex-direction:column}.portal-user-card{width:100%}}
@media(max-width:640px){.portal-grid,.portal-placeholder-grid{grid-template-columns:1fr}.nav-login{width:100%;margin-top:8px}}

/* V15.5 Role Permissions / User Access Control */
.access-intro .admin-note a{font-weight:900;color:var(--secondary,#C4822A)}
.role-card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0 0 18px}
.role-card{display:block;background:#fff;border:1px solid var(--line,#D8E6F0);border-radius:18px;padding:16px;text-decoration:none;color:var(--text,#1C2E3F);box-shadow:0 10px 28px rgba(13,31,53,.06);transition:.16s ease}
.role-card:hover{transform:translateY(-2px);border-color:rgba(196,130,42,.45);box-shadow:0 18px 42px rgba(13,31,53,.11)}
.role-card-kicker{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--secondary,#C4822A);font-weight:950;margin-bottom:7px}
.role-card strong{display:block;color:var(--primary,#0D1F35);font-size:1.04rem;margin-bottom:8px}.role-card small{display:block;color:var(--muted,#5A7089);line-height:1.45}
.role-permission-form{display:block}.permission-savebar{position:sticky;bottom:14px;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(255,255,255,.96);border:1px solid var(--line,#D8E6F0);border-radius:18px;padding:14px 16px;margin:16px 0;box-shadow:0 16px 48px rgba(13,31,53,.12);backdrop-filter:blur(10px)}
.permission-savebar strong{display:block;color:var(--primary,#0D1F35)}.permission-savebar small{display:block;color:var(--muted,#5A7089);margin-top:3px}.permission-savebar.bottom{position:static}
.role-matrix{scroll-margin-top:20px}.role-matrix-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.role-matrix-head h2{margin:0;color:var(--primary,#0D1F35);font-size:1.5rem}.role-matrix-head p{margin:5px 0 0;color:var(--muted,#5A7089);line-height:1.5}
.permission-group{border:1px solid var(--line,#D8E6F0);border-radius:16px;background:#fff;margin:12px 0;overflow:hidden}.permission-group summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:#f7fbff;font-weight:950;color:var(--primary,#0D1F35)}.permission-group summary::-webkit-details-marker{display:none}.permission-group summary:after{content:'+';font-weight:950;color:var(--secondary,#C4822A);font-size:1.2rem}.permission-group[open] summary:after{content:'–'}.permission-group summary small{display:block;text-align:right;color:var(--muted,#5A7089);font-weight:700;font-size:.78rem;max-width:520px}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;background:#fff}
.permission-tile{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line,#D8E6F0);border-radius:14px;padding:12px;background:#fbfdff;cursor:pointer;transition:.15s ease}.permission-tile:hover{border-color:rgba(196,130,42,.45);box-shadow:0 8px 22px rgba(13,31,53,.06)}.permission-tile.is-on{background:#fff8e8;border-color:#e8c982}.permission-tile input{margin-top:4px;transform:scale(1.08)}.permission-tile strong{display:block;color:var(--primary,#0D1F35);margin-bottom:3px}.permission-tile small{display:block;color:var(--muted,#5A7089);line-height:1.42}.permission-tile em{display:inline-block;margin-top:8px;font-size:.68rem;font-style:normal;color:#6c8197;background:#eef4fb;border-radius:999px;padding:3px 8px;font-weight:900}
.module-chip-list{display:flex;flex-wrap:wrap;gap:6px}.module-chip-list span{display:inline-flex;align-items:center;border-radius:999px;background:#eef4fb;border:1px solid var(--line,#D8E6F0);color:var(--primary,#0D1F35);padding:5px 9px;font-size:.78rem;font-weight:900}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;font-size:.78rem;font-weight:950}.status-pill.ok{background:#e8fff0;color:#147a38}.status-pill.off{background:#ffecec;color:#9b1c1c}.user-access-table td{vertical-align:top}.access-preview-box{background:#f7fbff;border:1px solid var(--line,#D8E6F0);border-radius:14px;padding:14px}.access-preview-box>strong{display:block;margin-bottom:10px;color:var(--primary,#0D1F35)}
@media(max-width:1100px){.role-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-grid{grid-template-columns:1fr}.permission-savebar,.role-matrix-head{flex-direction:column;align-items:stretch}.permission-group summary{align-items:flex-start;flex-direction:column}.permission-group summary small{text-align:left;max-width:none}}
@media(max-width:640px){.role-card-grid{grid-template-columns:1fr}.user-access-table{font-size:.86rem}.module-chip-list span{font-size:.72rem}}

/* V15.6 speed/permission UI optimization */
.role-card-grid-compact .role-card{min-height:110px}.role-card.is-active{border-color:var(--accent,#c4822a);box-shadow:0 10px 30px rgba(13,31,53,.12);background:#fffaf1}.slim-role-form .role-matrix{margin-top:16px}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px;padding:12px 14px;border:1px solid var(--line,#d8e6f0);background:#f8fbff;border-radius:14px}.pagination-bar.bottom{margin:14px 0 0}.page-indicator{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid var(--line,#d8e6f0);border-radius:10px;background:white;font-weight:800;color:var(--text,#0d1f35)}
@media(max-width:760px){.pagination-bar{align-items:flex-start;flex-direction:column}.role-card-grid-compact{grid-template-columns:1fr}}

/* V15.6.2 - portal-aware admin sidebar separation */
.module-aware-sidebar .module-context-note{
  margin: 10px 10px 14px;
  padding: 10px 11px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background: rgba(255,255,255,.06);
  color: rgba(235,246,255,.78);
  font-size: .78rem;
  line-height: 1.4;
  font-weight: 800;
}
.module-aware-sidebar.module-users .admin-role-chip,
.module-aware-sidebar.module-website .admin-role-chip,
.module-aware-sidebar.module-system .admin-role-chip{
  letter-spacing: .03em;
}
.module-aware-sidebar.module-users .sidebar-actions .primary,
.module-aware-sidebar.module-website .sidebar-actions .primary,
.module-aware-sidebar.module-system .sidebar-actions .primary{
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.22);
}

/* V15.6.3 - restore portal module action cards + hard separation polish */
.module-hub-hero{padding-top:56px;padding-bottom:56px;}
.portal-module-section{padding-top:52px;}
.portal-module-notice{padding:14px 16px;border:1px solid rgba(196,130,42,.28);background:#fff7e8;border-radius:14px;margin-bottom:18px;color:#65420e;font-weight:700;}
.portal-action-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;}
.portal-action-card{display:flex!important;flex-direction:column!important;gap:10px!important;padding:24px!important;border:1px solid var(--line, #d8e6f0)!important;border-radius:20px!important;background:#fff!important;text-decoration:none!important;color:inherit!important;min-height:205px!important;box-shadow:0 18px 38px rgba(13,31,53,.06)!important;transition:.18s ease!important;}
.portal-action-card:hover{transform:translateY(-2px);box-shadow:0 22px 46px rgba(13,31,53,.1)!important;}
.portal-action-card .portal-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:#fff5df;font-size:1.45rem;margin:0 0 6px;}
.portal-action-card h2{margin:8px 0 0!important;font-size:1.45rem!important;line-height:1.05!important;color:var(--primary,#0d1f35)!important;}
.portal-action-card p{margin:0!important;color:var(--muted, #5a7089)!important;line-height:1.55!important;}
.portal-action-card strong{margin-top:auto!important;color:var(--primary, #0d1f35)!important;}
.portal-action-card.is-disabled{opacity:.72;cursor:not-allowed;background:#f7fbff!important;}
.portal-action-card.is-disabled:hover{transform:none;box-shadow:0 18px 38px rgba(13,31,53,.06)!important;}
.portal-action-card.is-disabled strong{color:#8a6a23!important;}
.module-aware-sidebar .sidebar-actions .primary{color:#fff!important;}
@media (max-width: 980px){.portal-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media (max-width: 640px){.portal-action-grid{grid-template-columns:1fr!important}.module-hub-hero{padding-top:36px;padding-bottom:36px;}}

/* V15.6.4 hard portal module-card fallback + child-action permissions UI */
.portal-module-section .portal-action-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;align-items:stretch!important;}
.portal-module-section .portal-action-card{display:flex!important;flex-direction:column!important;gap:10px!important;padding:26px!important;border:1px solid var(--line,#d8e6f0)!important;border-radius:22px!important;background:#fff!important;text-decoration:none!important;color:inherit!important;min-height:220px!important;box-shadow:0 18px 44px rgba(13,31,53,.07)!important;transition:.18s ease!important;}
.portal-module-section .portal-action-card:hover{transform:translateY(-2px);box-shadow:0 24px 56px rgba(13,31,53,.12)!important;}
.portal-module-section .portal-action-card .portal-icon{width:54px!important;height:54px!important;border-radius:18px!important;display:grid!important;place-items:center!important;background:#fff5df!important;font-size:1.45rem!important;margin:0 0 8px!important;}
.portal-module-section .portal-action-card h2{margin:8px 0 0!important;font-size:clamp(1.55rem,2vw,2rem)!important;line-height:1.05!important;color:var(--primary,#0d1f35)!important;}
.portal-module-section .portal-action-card p{margin:0!important;color:var(--muted,#5a7089)!important;line-height:1.55!important;}
.portal-module-section .portal-action-card strong{margin-top:auto!important;color:var(--primary,#0d1f35)!important;}
.portal-module-notice{background:#fff8e8;border:1px solid #f4ddb0;border-left:4px solid var(--secondary,#c4822a);border-radius:14px;padding:14px 16px;margin-bottom:18px;font-weight:800;color:#6d4300;}
@media(max-width:980px){.portal-module-section .portal-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:640px){.portal-module-section .portal-action-grid{grid-template-columns:1fr!important;}}


/* V16.2 Premium 3D Owner Interface - fast CSS/WebGL hybrid */
:root{
  --glass: rgba(255,255,255,.08);
  --glass-border: rgba(255,255,255,.18);
  --shadow-3d: 0 24px 60px rgba(4,15,28,.20);
  --shadow-3d-strong: 0 34px 90px rgba(4,15,28,.28);
}
html{scroll-behavior:smooth}
body{background:
  radial-gradient(circle at 18% 4%, rgba(232,160,70,.08), transparent 28%),
  radial-gradient(circle at 82% 18%, rgba(42,165,220,.08), transparent 30%),
  var(--soft,#f5f8fc)!important;
}
.site-header{position:sticky;top:0;z-index:80;border-bottom:1px solid rgba(255,255,255,.10);box-shadow:0 10px 36px rgba(4,15,28,.20);backdrop-filter:blur(14px);}
.brand-logo{filter:drop-shadow(0 6px 14px rgba(0,0,0,.28));}
.main-nav a:not(.nav-cta):not(.nav-login){position:relative;}
.main-nav a:not(.nav-cta):not(.nav-login)::after{content:"";position:absolute;left:12px;right:12px;bottom:3px;height:2px;background:linear-gradient(90deg,var(--secondary),var(--amber2));transform:scaleX(0);transform-origin:left;transition:transform .2s ease;}
.main-nav a:hover::after{transform:scaleX(1)}
.hero,.page-hero,.portal-hero{position:relative;overflow:hidden;isolation:isolate;background:
  radial-gradient(circle at 74% 32%, rgba(45,160,218,.18), transparent 33%),
  radial-gradient(circle at 18% 82%, rgba(232,160,70,.15), transparent 32%),
  linear-gradient(145deg,#06111f 0%, var(--primary,#0D1F35) 48%, #102d48 100%)!important;
}
.hero-3d-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:.78;filter:saturate(1.1)}
.page-hero-3d-canvas{opacity:.42}
.hero-bg{z-index:1;background-image:
  linear-gradient(rgba(232,160,70,.075) 1px,transparent 1px),
  linear-gradient(90deg,rgba(232,160,70,.06) 1px,transparent 1px)!important;background-size:64px 64px!important;transform:rotate(-8deg) scale(1.35)!important;mask-image:linear-gradient(to bottom,rgba(0,0,0,.95),rgba(0,0,0,.2));}
.hero::after,.portal-hero::after,.page-hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(5,13,26,.70),rgba(5,13,26,.22) 50%,rgba(5,13,26,.65));pointer-events:none;}
.hero-grid,.portal-hero-inner,.page-hero .container{position:relative;z-index:3;}
.hero-tag,.eyebrow{letter-spacing:.16em!important;text-shadow:0 8px 22px rgba(0,0,0,.24);}
.hero h1,.portal-hero h1,.page-hero h1{font-family:'Barlow Condensed',var(--heading-font),system-ui,sans-serif!important;letter-spacing:-.015em;text-shadow:0 22px 55px rgba(0,0,0,.34);}
.hero .lead,.portal-hero p,.page-hero p{color:rgba(236,245,255,.82)!important;}
.hero-panel{position:relative;z-index:4;transform-style:preserve-3d;perspective:1200px;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.055))!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 34px 90px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.16)!important;backdrop-filter:blur(14px);}
.hero-panel::before{content:"";position:absolute;inset:10px;border-radius:20px;border:1px solid rgba(232,160,70,.18);pointer-events:none;transform:translateZ(28px);}
.hero-panel img{transform:translateZ(44px);box-shadow:0 22px 60px rgba(0,0,0,.20);}
.btn,.nav-cta,.nav-login{box-shadow:0 14px 32px rgba(7,18,31,.18);transition:transform .2s ease, box-shadow .2s ease, filter .2s ease!important;}
.btn:hover,.nav-cta:hover,.nav-login:hover{transform:translateY(-2px);box-shadow:0 20px 46px rgba(7,18,31,.26);filter:saturate(1.05)}
.trust-strip{background:linear-gradient(90deg,#06111f,#0d2a42,#06111f)!important;box-shadow:0 16px 40px rgba(4,15,28,.18);}
.trust-grid span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:9px 15px;box-shadow:inset 0 1px 0 rgba(255,255,255,.10);}
.service-card,.project-card,.credential-card,.content-card,.form-card,.gallery-card,.portal-module-card,.portal-action-card,.why-cards article{position:relative;overflow:hidden;transform-style:preserve-3d;border:1px solid rgba(216,230,240,.9)!important;box-shadow:var(--shadow-3d)!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease!important;}
.service-card::before,.project-card::before,.credential-card::before,.content-card::before,.form-card::before,.gallery-card::before,.portal-module-card::before,.portal-action-card::before,.why-cards article::before{content:"";position:absolute;inset:-1px;background:radial-gradient(360px circle at var(--glow-x,50%) var(--glow-y,20%),rgba(232,160,70,.16),transparent 42%);opacity:0;transition:opacity .22s ease;pointer-events:none;z-index:1;}
.service-card:hover::before,.project-card:hover::before,.credential-card:hover::before,.content-card:hover::before,.form-card:hover::before,.gallery-card:hover::before,.portal-module-card:hover::before,.portal-action-card:hover::before,.why-cards article:hover::before{opacity:1;}
.service-card:hover,.project-card:hover,.credential-card:hover,.gallery-card:hover,.portal-module-card:hover,.portal-action-card:hover,.why-cards article:hover{box-shadow:var(--shadow-3d-strong)!important;border-color:rgba(232,160,70,.45)!important;}
.service-card>* ,.project-card>* ,.credential-card>* ,.content-card>* ,.form-card>* ,.gallery-card>* ,.portal-module-card>* ,.portal-action-card>* ,.why-cards article>*{position:relative;z-index:2;}
.icon-chip,.portal-icon{box-shadow:0 12px 34px rgba(232,160,70,.22), inset 0 1px 0 rgba(255,255,255,.45)!important;}
.portal-hero{padding:72px 0 52px!important;}
.portal-user-card{background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.06))!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 26px 70px rgba(0,0,0,.26)!important;transform:translateZ(0);}
.portal-grid,.portal-action-grid{perspective:1200px;}
.portal-module-card,.portal-action-card{background:linear-gradient(145deg,#ffffff,#f7fbff)!important;min-height:230px!important;}
.portal-module-card strong,.portal-action-card strong{display:inline-flex;align-items:center;gap:6px;color:var(--primary,#0d1f35)!important;}
.module-hub-hero .btn.secondary{background:rgba(255,255,255,.90)!important;border:1px solid rgba(255,255,255,.5)!important;color:var(--primary,#0d1f35)!important;}
.stats-band,.cta-box{position:relative;overflow:hidden;box-shadow:0 30px 80px rgba(4,15,28,.24)!important;}
.cta-box::before,.stats-band::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 10%,rgba(232,160,70,.18),transparent 35%),radial-gradient(circle at 86% 70%,rgba(64,170,220,.15),transparent 34%);pointer-events:none;}
.cta-box>* ,.stats-band>*{position:relative;z-index:2;}
.reveal-3d{opacity:0;transform:perspective(1000px) translateY(34px) rotateX(7deg);transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1);transform-origin:50% 100%;}
.reveal-3d.is-visible{opacity:1;transform:perspective(1000px) translateY(0) rotateX(0);}
.tilt-3d{--glow-x:50%;--glow-y:50%;will-change:transform;}
@media(max-width:900px){.hero-3d-canvas{opacity:.40}.hero-panel::before{display:none}.portal-hero{padding:50px 0 36px!important}}
@media(max-width:640px){.hero h1{font-size:clamp(2.7rem,15vw,4.2rem)!important}.portal-module-card,.portal-action-card{min-height:190px!important}.trust-grid span{font-size:.72rem}}
@media(prefers-reduced-motion:reduce){.hero-3d-canvas,.page-hero-3d-canvas{display:none!important}.reveal-3d{opacity:1!important;transform:none!important;transition:none!important}.tilt-3d,.tilt-3d:hover{transform:none!important}}
