:root{--bg:#0b0d10;--panel:#14171b;--panel-2:#1b1f24;--line:rgba(255,255,255,.1);--text:#f7f7f5;--muted:#9fa8b8;--orange:#ff9900;--orange-2:#ff5a1f;--maroon:#7c190d;--green:#54e39a;--max:1380px;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,select{font:inherit}.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-100px;z-index:100;padding:10px 16px;background:var(--orange);color:#111;font-weight:800}.skip-link:focus{top:16px}.site-header{position:sticky;top:0;z-index:40;background:rgba(11,13,16,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.utility-bar{border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.utility-inner,.utility-right,.nav-row,.site-nav,.brand,.footer-brand{display:flex;align-items:center}.utility-inner{min-height:38px;justify-content:space-between}.utility-status,.data-live{display:flex;align-items:center;gap:8px}.utility-status i,.data-live i,.method-note i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(84,227,154,.7)}.utility-right{gap:20px}.live-clock{font-variant-numeric:tabular-nums}.social-links{display:flex;gap:7px}.social-links a,.social-links span{display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--line);border-radius:50%;font-size:11px;font-weight:900}.social-links a:hover{border-color:var(--orange);color:var(--orange)}.social-links .is-disabled{opacity:.45}.nav-row{min-height:92px;justify-content:space-between;gap:28px}.brand{gap:14px}.brand img,.footer-brand img{border-radius:50%;filter:drop-shadow(0 0 18px rgba(255,54,54,.25))}.brand span{display:flex;flex-direction:column}.brand small{font-size:11px;letter-spacing:.15em;color:#aeb5c0;font-weight:700}.brand strong{font-size:20px;line-height:1.35}.brand em{font-style:normal;font-size:10px;letter-spacing:.18em;color:var(--orange);font-weight:800}.site-nav{gap:27px;font-size:13px;font-weight:700}.site-nav>a:not(.nav-primary):hover{color:var(--orange)}.nav-primary,.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:999px;font-weight:850}.nav-primary{padding:12px 18px;border:1px solid rgba(255,153,0,.35);background:rgba(255,153,0,.08)}.nav-primary:hover{background:var(--orange);color:#15100a}.nav-toggle{display:none;border:1px solid var(--line);background:var(--panel);color:#fff;border-radius:10px;padding:9px 13px}.hero{min-height:650px;background:radial-gradient(circle at 80% 40%,rgba(255,153,0,.08),transparent 28%)}.hero-track{position:relative;min-height:650px;overflow:hidden}.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .65s ease;background-image:linear-gradient(105deg,rgba(38,12,10,.98) 0%,rgba(16,18,22,.96) 52%,rgba(15,16,18,.72) 100%),var(--slide-image);background-size:cover;background-position:center}.hero-slide::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(to right,#000,transparent)}.hero-slide.is-active{opacity:1;visibility:visible}.hero-content{position:relative;z-index:2;min-height:650px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:center;gap:80px;padding-block:90px}.hero-copy{max-width:780px}.eyebrow{display:block;color:var(--orange);font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:16px}.hero h1{font-size:clamp(48px,6.4vw,92px);line-height:.98;letter-spacing:-.055em;margin:0 0 28px;max-width:900px}.hero p{font-size:clamp(17px,1.4vw,21px);color:#bec5d0;max-width:700px;margin:0 0 35px}.button{padding:15px 23px}.button-primary{background:linear-gradient(135deg,var(--orange),#ff7a00);color:#160f08;box-shadow:0 10px 35px rgba(255,137,0,.16)}.button-primary:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(255,137,0,.28)}.hero-orbit{justify-self:center;width:310px;aspect-ratio:1;border:1px solid rgba(255,255,255,.12);border-radius:50%;display:grid;place-items:center;position:relative;box-shadow:inset 0 0 90px rgba(255,153,0,.04)}.hero-orbit::before,.hero-orbit::after{content:"";position:absolute;border-radius:50%;border:1px dashed rgba(255,255,255,.08)}.hero-orbit::before{inset:42px}.hero-orbit::after{inset:88px;background:#171b20;border-style:solid}.hero-orbit span{z-index:1;font-size:42px;font-weight:300}.slider-controls{position:absolute;z-index:6;left:50%;bottom:32px;transform:translateX(-50%);display:flex;align-items:center;gap:14px}.slider-controls>button{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(15,17,20,.7);color:#fff}.slider-dots{display:flex;gap:8px}.slider-dots button{width:34px;height:3px;border:0;background:#555;padding:0}.slider-dots button.is-active{background:var(--orange)}.section{padding:68px 0}.section-head{max-width:760px;margin-bottom:42px}.section-head h2{font-size:clamp(32px,4vw,54px);line-height:1.08;letter-spacing:-.04em;margin:0 0 15px}.section-head p{color:var(--muted);font-size:18px;margin:0}.split-head{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:30px}.year-form{display:grid;gap:7px}.year-form label{font-size:10px;color:var(--muted);font-weight:800;letter-spacing:.1em}.year-form select{min-width:150px;background:var(--panel);color:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 15px}.summary-section{background:linear-gradient(180deg,#111419,#0d1013)}.metric-grid{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:16px}.metric-card{min-height:215px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,var(--panel-2),#111316);padding:27px;display:flex;flex-direction:column;justify-content:space-between;transition:.2s}.metric-card:hover{transform:translateY(-4px);border-color:rgba(255,153,0,.45)}.metric-card span{font-size:12px;color:#a9b2c2;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.metric-card strong{font-size:clamp(38px,4vw,60px);letter-spacing:-.045em}.metric-card em{font-style:normal;color:var(--muted);font-size:13px}.metric-featured{background:linear-gradient(145deg,#6f190d,#2a1513);border-color:rgba(255,115,46,.32)}.method-note{display:flex;align-items:center;gap:10px;margin:22px 2px 0;color:#8f99a8;font-size:12px}.apps-section{background:#0b0d10}.app-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.app-card{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:17px;min-height:132px;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--panel);transition:.2s}.app-card:hover{border-color:var(--orange);background:#1b1916;transform:translateY(-3px)}.app-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:14px;background:rgba(255,153,0,.1);border:1px solid rgba(255,153,0,.22);color:var(--orange);font-weight:900}.app-card strong,.app-card small{display:block}.app-card strong{font-size:17px;margin-bottom:5px}.app-card small{color:var(--muted)}.app-card>b{color:var(--orange)}.notice-section{background:linear-gradient(115deg,#29120f,#111419 56%)}.notice-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px}.notice-list{border-top:1px solid var(--line)}.notice-item{display:grid;grid-template-columns:100px 1fr auto;gap:20px;align-items:center;padding:22px 3px;border-bottom:1px solid var(--line)}.notice-item:hover strong{color:var(--orange)}.notice-item time{font-size:12px;color:var(--orange);font-weight:800}.notice-item strong,.notice-item small{display:block}.notice-item small{color:var(--muted);margin-top:3px}.news-section{background:#0d1013}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-card{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:var(--panel)}.news-visual{height:190px;background:linear-gradient(135deg,#4c170e,#1e2228);background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:22px}.news-visual span{font-size:12px;font-weight:900;letter-spacing:.16em;color:var(--orange)}.news-body{padding:25px}.news-meta{font-size:10px;color:var(--orange);font-weight:800;letter-spacing:.1em}.news-body h3{font-size:22px;line-height:1.2;margin:12px 0}.news-body p{color:var(--muted);min-height:76px}.news-body a{color:var(--orange);font-weight:800;font-size:13px}.closing-section{padding-top:30px}.closing-card{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:55px;border:1px solid rgba(255,153,0,.28);border-radius:28px;background:radial-gradient(circle at 90% 40%,rgba(255,153,0,.17),transparent 31%),linear-gradient(120deg,#321410,#16191d)}.closing-card h2{font-size:clamp(34px,4vw,58px);margin:0 0 12px;letter-spacing:-.04em}.closing-card p{color:var(--muted);max-width:750px;margin:0}.site-footer{border-top:1px solid var(--line);padding:62px 0 25px;background:#080a0c}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:45px}.footer-brand{align-self:start;gap:14px}.footer-brand strong,.footer-brand span,.footer-grid>div>a,.footer-grid>div>small{display:block}.footer-brand span,.footer-grid>div>a,.footer-grid>div>small{color:var(--muted);font-size:13px;margin-top:8px}.footer-grid>div>a:hover{color:var(--orange)}.footer-grid>div>strong{font-size:13px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:44px;padding-top:22px;color:#747e8c;font-size:11px}
@media(max-width:980px){.site-nav{display:none;position:absolute;top:100%;left:24px;right:24px;background:#14171b;border:1px solid var(--line);border-radius:18px;padding:18px;flex-direction:column;align-items:stretch}.site-nav.is-open{display:flex}.nav-toggle{display:block}.hero-content{grid-template-columns:1fr}.hero-orbit{display:none}.metric-grid{grid-template-columns:repeat(2,1fr)}.app-grid,.news-grid{grid-template-columns:repeat(2,1fr)}.notice-layout{grid-template-columns:1fr;gap:10px}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.container{width:min(calc(100% - 28px),var(--max))}.utility-status{display:none}.utility-inner{justify-content:flex-end}.live-clock{font-size:10px}.brand small{display:none}.brand strong{font-size:15px}.brand img{width:45px;height:45px}.nav-row{min-height:74px}.hero,.hero-track,.hero-content{min-height:590px}.hero h1{font-size:44px}.metric-grid,.app-grid,.news-grid,.footer-grid{grid-template-columns:1fr}.split-head,.closing-card{align-items:flex-start;flex-direction:column}.metric-card{min-height:180px}.section{padding:52px 0}.notice-item{grid-template-columns:78px 1fr}.notice-item b{display:none}.closing-card{padding:35px 25px}.footer-bottom{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* LANDING-4 · RESPONSIVE VISUAL POLISH */
:root{
    --landing-ease:cubic-bezier(.2,.72,.2,1);
    --landing-shadow:0 22px 55px rgba(0,0,0,.22);
    --landing-glow:0 18px 48px rgba(255,153,0,.1)
}

[id]{scroll-margin-top:142px}

.section{
    padding:clamp(48px,4.2vw,58px) 0
}

.section-head{
    margin-bottom:clamp(27px,3vw,36px)
}

.section-head h2{
    text-wrap:balance
}

.section-head p{
    max-width:720px;
    text-wrap:pretty
}

.site-nav a,
.nav-primary,
.nav-toggle,
.button,
.slider-controls>button{
    min-height:44px
}

.nav-toggle{
    min-width:48px;
    cursor:pointer
}

.hero,
.hero-track,
.hero-content{
    min-height:clamp(560px,68vh,620px)
}

.hero-content{
    gap:clamp(42px,5vw,68px);
    padding-block:clamp(64px,6vw,82px)
}

.hero h1{
    text-wrap:balance
}

.hero p{
    text-wrap:pretty
}

.button,
.nav-primary,
.metric-card,
.app-card,
.news-card,
.notice-item,
.app-icon,
.news-visual,
.slider-controls>button,
.social-links a{
    transition:
        transform .28s var(--landing-ease),
        border-color .28s ease,
        background-color .28s ease,
        color .28s ease,
        box-shadow .28s ease,
        opacity .28s ease
}

.metric-grid,
.app-grid,
.news-grid{
    align-items:stretch
}

.metric-card{
    min-height:205px
}

.app-card{
    min-height:122px;
    overflow:hidden
}

.app-icon{
    flex:none;
    aspect-ratio:1;
    transition:
        transform .32s var(--landing-ease),
        border-color .28s ease,
        box-shadow .28s ease
}

.app-icon.app-icon-image{
    padding:3px;
    overflow:hidden;
    background:
        radial-gradient(circle at 50% 35%,rgba(255,153,0,.1),transparent 68%),
        #101318
}

.app-icon.app-icon-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    border-radius:10px
}

.app-card>b{
    transition:transform .28s var(--landing-ease)
}

.notice-item{
    min-height:82px
}

.news-card{
    display:flex;
    flex-direction:column;
    min-width:0;
    box-shadow:0 0 0 rgba(0,0,0,0);
    transition:
        transform .3s var(--landing-ease),
        border-color .28s ease,
        box-shadow .3s ease
}

.news-visual{
    flex:none;
    background-repeat:no-repeat
}

.news-body{
    display:flex;
    flex:1;
    flex-direction:column
}

.news-body h3{
    text-wrap:balance
}

.news-body p{
    min-height:0;
    text-wrap:pretty
}

.news-body a{
    margin-top:auto;
    align-self:flex-start
}

.closing-section{
    padding-top:24px
}

.closing-card{
    padding:clamp(38px,4vw,50px)
}

.site-footer{
    padding-top:54px
}

a:focus-visible,
button:focus-visible,
select:focus-visible{
    outline:3px solid rgba(255,153,0,.72);
    outline-offset:4px
}

@media (hover:hover) and (pointer:fine){
    .metric-card:hover,
    .app-card:hover,
    .news-card:hover{
        transform:translateY(-5px);
        border-color:rgba(255,153,0,.52);
        box-shadow:var(--landing-shadow),var(--landing-glow)
    }

    .app-card:hover .app-icon{
        transform:scale(1.065) rotate(-1deg);
        border-color:rgba(255,153,0,.5);
        box-shadow:0 10px 26px rgba(255,153,0,.12)
    }

    .app-card:hover>b{
        transform:translate(3px,-3px)
    }

    .news-card:hover .news-visual{
        transform:scale(1.018)
    }

    .notice-item:hover{
        padding-left:10px;
        padding-right:10px;
        background:rgba(255,255,255,.018)
    }

    .slider-controls>button:hover,
    .social-links a:hover{
        transform:translateY(-2px);
        border-color:rgba(255,153,0,.6);
        box-shadow:0 9px 24px rgba(0,0,0,.25)
    }
}

@media(max-width:1180px){
    .nav-row{
        gap:20px
    }

    .site-nav{
        gap:18px
    }

    .metric-card{
        padding:24px
    }

    .app-card{
        padding:20px
    }
}

@media(max-width:980px){
    [id]{
        scroll-margin-top:118px
    }

    .site-nav{
        z-index:50;
        box-shadow:0 24px 55px rgba(0,0,0,.42)
    }

    .hero,
    .hero-track,
    .hero-content{
        min-height:560px
    }

    .hero-content{
        padding-block:58px 76px
    }

    .app-grid,
    .news-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))
    }

    .notice-layout{
        gap:22px
    }
}

@media(max-width:700px){
    .container{
        width:min(calc(100% - 28px),var(--max))
    }

    [id]{
        scroll-margin-top:102px
    }

    .utility-inner{
        min-height:34px
    }

    .utility-right{
        width:100%;
        justify-content:space-between;
        gap:10px
    }

    .social-links a,
    .social-links span{
        width:32px;
        height:32px
    }

    .nav-row{
        min-height:70px;
        gap:12px
    }

    .brand{
        min-width:0;
        gap:10px
    }

    .brand span{
        min-width:0
    }

    .brand strong{
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap
    }

    .site-nav{
        left:14px;
        right:14px;
        gap:4px;
        padding:12px;
        border-radius:16px;
        max-height:calc(100svh - 116px);
        overflow-y:auto
    }

    .site-nav>a{
        display:flex;
        align-items:center;
        width:100%;
        min-height:46px;
        padding:10px 12px;
        border-radius:10px
    }

    .site-nav>a:not(.nav-primary):hover{
        background:rgba(255,255,255,.04)
    }

    .nav-primary{
        margin-top:5px
    }

    .hero,
    .hero-track,
    .hero-content{
        min-height:520px
    }

    .hero-content{
        padding-block:46px 82px
    }

    .hero h1{
        font-size:clamp(2.25rem,11vw,3.35rem);
        line-height:1.01;
        letter-spacing:-.045em;
        margin-bottom:20px
    }

    .hero p{
        font-size:1rem;
        line-height:1.6;
        margin-bottom:27px
    }

    .slider-controls{
        bottom:20px;
        gap:10px
    }

    .slider-controls>button{
        width:44px;
        height:44px
    }

    .slider-dots button{
        width:25px;
        height:4px
    }

    .section{
        padding:42px 0
    }

    .section-head{
        margin-bottom:25px
    }

    .section-head h2{
        font-size:clamp(2rem,10vw,2.75rem)
    }

    .section-head p{
        font-size:1rem
    }

    .split-head{
        gap:20px
    }

    .year-form,
    .year-form select{
        width:100%
    }

    .metric-grid,
    .app-grid,
    .news-grid{
        grid-template-columns:1fr
    }

    .metric-card{
        min-height:158px;
        padding:22px
    }

    .metric-card strong{
        font-size:clamp(2.5rem,14vw,3.4rem)
    }

    .app-card{
        grid-template-columns:auto minmax(0,1fr) auto;
        min-height:106px;
        padding:17px;
        gap:14px;
        border-radius:17px
    }

    .app-icon{
        width:52px;
        height:52px
    }

    .app-card strong{
        font-size:1rem
    }

    .app-card small{
        font-size:.82rem;
        line-height:1.45
    }

    .notice-item{
        grid-template-columns:72px minmax(0,1fr) auto;
        min-height:78px;
        gap:12px;
        padding-block:18px
    }

    .notice-item small{
        font-size:.82rem
    }

    .news-visual{
        height:180px
    }

    .news-body{
        padding:21px
    }

    .news-body h3{
        font-size:1.25rem
    }

    .closing-section{
        padding-top:16px
    }

    .closing-card{
        gap:25px;
        padding:30px 22px
    }

    .closing-card .button{
        width:100%
    }

    .site-footer{
        padding-top:45px
    }

    .footer-grid{
        gap:30px
    }

    .footer-bottom{
        margin-top:34px
    }
}

@media(max-width:420px){
    .brand em{
        display:none
    }

    .brand img{
        width:42px;
        height:42px
    }

    .live-clock{
        max-width:210px
    }

    .hero,
    .hero-track,
    .hero-content{
        min-height:500px
    }

    .hero h1{
        font-size:clamp(2.05rem,10.5vw,2.85rem)
    }

    .app-card{
        padding:15px
    }

    .app-icon{
        width:49px;
        height:49px
    }

    .notice-item{
        grid-template-columns:1fr auto
    }

    .notice-item time{
        grid-column:1/-1
    }
}

@media(prefers-reduced-motion:reduce){
    .metric-card:hover,
    .app-card:hover,
    .news-card:hover,
    .app-card:hover .app-icon,
    .app-card:hover>b,
    .news-card:hover .news-visual,
    .notice-item:hover{
        transform:none
    }
}

/* PORTAL-1A2B · CONTACT VISIBILITY */
.contact-section{
    padding-top:38px;
    background:
        radial-gradient(circle at 85% 15%,rgba(84,227,154,.055),transparent 30%),
        #0d1013
}

.contact-card{
    display:grid;
    grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);
    gap:55px;
    padding:clamp(30px,4vw,48px);
    border:1px solid rgba(255,255,255,.1);
    border-radius:26px;
    background:
        radial-gradient(circle at 100% 0,rgba(255,153,0,.1),transparent 36%),
        linear-gradient(145deg,#181c21,#111419)
}

.contact-heading h2{
    margin:0 0 13px;
    font-size:clamp(30px,4vw,48px);
    line-height:1.08;
    letter-spacing:-.04em
}

.contact-heading p{
    margin:0;
    color:var(--muted)
}

.contact-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px
}

.contact-item{
    display:flex;
    min-width:0;
    min-height:92px;
    flex-direction:column;
    justify-content:center;
    gap:7px;
    padding:18px 20px;
    border:1px solid var(--line);
    border-radius:16px;
    background:rgba(255,255,255,.025);
    transition:
        transform .28s var(--landing-ease),
        border-color .28s ease,
        background-color .28s ease,
        box-shadow .28s ease
}

.contact-item>span{
    color:var(--orange);
    font-size:10px;
    font-weight:900;
    letter-spacing:.12em
}

.contact-item>strong{
    overflow-wrap:anywhere;
    font-size:14px;
    line-height:1.5
}

.contact-whatsapp>span{
    color:var(--green)
}

@media(hover:hover) and (pointer:fine){
    a.contact-item:hover{
        transform:translateY(-3px);
        border-color:rgba(255,153,0,.45);
        background:rgba(255,153,0,.045);
        box-shadow:0 16px 38px rgba(0,0,0,.22)
    }

    a.contact-whatsapp:hover{
        border-color:rgba(84,227,154,.4);
        background:rgba(84,227,154,.045)
    }
}

@media(max-width:900px){
    .contact-card{
        grid-template-columns:1fr;
        gap:28px
    }
}

@media(max-width:640px){
    .contact-section{
        padding-top:22px
    }

    .contact-card{
        gap:24px;
        padding:27px 20px
    }

    .contact-grid{
        grid-template-columns:1fr
    }

    .contact-item{
        min-height:82px
    }
}

@media(prefers-reduced-motion:reduce){
    a.contact-item:hover{
        transform:none
    }
}

/* PORTAL-1A2C · FOOTER + SERVICE HOURS */
.contact-hours{
    white-space:pre-line
}
