:root{
    --view-bg:#030303;
    --view-panel:rgba(12,12,16,.94);
    --view-panel-soft:rgba(255,255,255,.035);
    --view-text:#f7f1e8;
    --view-muted:rgba(247,241,232,.68);
    --view-line:rgba(255,255,255,.12);
    --view-gold:#d9ad3c;
    --view-gold-2:#ffe19a;
    --view-pink:#ff5aa5;
    --view-pink-2:#ffacd4;
}

html,body,.page-view{overflow-x:hidden;}
.page-view main{
    min-height:100vh;
    background:
        radial-gradient(circle at 18% 0,rgba(255,90,165,.10),transparent 30%),
        radial-gradient(circle at 86% 4%,rgba(217,173,60,.10),transparent 34%),
        linear-gradient(180deg,#050505,#020202 62%,#050505);
    color:var(--view-text);
}

.n2a-view{
    --view-accent:var(--view-gold);
    --view-accent-2:var(--view-gold-2);
    --view-accent-soft:rgba(217,173,60,.13);
    --view-accent-line:rgba(217,173,60,.42);
    padding:18px 28px 58px;
}
.n2a-view--viet{
    --view-accent:var(--view-pink);
    --view-accent-2:var(--view-pink-2);
    --view-accent-soft:rgba(255,90,165,.13);
    --view-accent-line:rgba(255,90,165,.48);
}
.n2a-view-wrap{width:min(1620px,100%);margin:0 auto;}
.n2a-view *{box-sizing:border-box;}

.n2a-view-breadcrumb{
    display:flex;align-items:center;flex-wrap:wrap;gap:10px;
    min-height:42px;padding:8px 2px 16px;
    border-bottom:1px solid rgba(255,255,255,.07);
    color:var(--view-muted);font-size:14px;
}
.n2a-view-breadcrumb a{color:var(--view-muted);text-decoration:none;}
.n2a-view-breadcrumb strong{color:var(--view-accent-2);font-weight:520;}

.n2a-view-grid--columns{
    display:grid;
    grid-template-columns:minmax(540px,1.06fr) minmax(420px,.82fr) minmax(350px,.66fr);
    grid-template-rows:332px 222px 222px 164px 318px;
    grid-template-areas:
        "intro   media   staff"
        "courses about   address"
        "courses gallery address"
        "features gallery related"
        "reviews reviews related";
    gap:18px 22px;
    align-items:stretch;
    margin-top:18px;
}
.n2a-view-column{display:contents;}
.n2a-detail-card{
    position:relative;width:100%;min-width:0;overflow:hidden;
    border:1px solid var(--view-accent-line);
    border-radius:18px;
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012)),var(--view-panel);
    box-shadow:0 18px 45px rgba(0,0,0,.28);
}
.n2a-detail-card h2{
    margin:0 0 16px;color:var(--view-accent);
    font-size:20px;line-height:1.15;font-weight:560;letter-spacing:.02em;text-transform:uppercase;
}
.n2a-detail-card--intro{grid-area:intro;padding:28px 8px 26px;border:0;background:transparent;box-shadow:none;display:flex;flex-direction:column;justify-content:center;}
.n2a-detail-card--media{grid-area:media;padding:22px;}
.n2a-detail-card--staff{grid-area:staff;padding:22px;}
.n2a-detail-card--courses{grid-area:courses;padding:22px 24px;}
.n2a-detail-card--about{grid-area:about;padding:22px 24px;}
.n2a-detail-card--address{grid-area:address;padding:22px 24px;}
.n2a-detail-card--gallery{grid-area:gallery;padding:22px 24px;}
.n2a-detail-card--features{grid-area:features;padding:22px 24px;}
.n2a-detail-card--reviews{grid-area:reviews;padding:22px 24px;}
.n2a-detail-card--related{grid-area:related;padding:22px 24px;}

.n2a-mobile-hero{display:none;}
.n2a-view-eyebrow{margin:0 0 8px;color:var(--view-accent);font-size:15px;font-weight:620;letter-spacing:.02em;}
.n2a-detail-card--intro h1{margin:0;color:#fff;font-size:42px;line-height:1.05;font-weight:540;letter-spacing:-.045em;overflow-wrap:anywhere;}
.n2a-view-tagline{margin:13px 0 0;color:var(--view-muted);font-size:17px;line-height:1.52;}
.n2a-open-time{margin:15px 0 0;color:rgba(255,255,255,.88);font-size:15px;}
.n2a-open-time span{color:var(--view-accent);}

.n2a-contact-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;align-items:stretch;}
.n2a-contact-btn{
    width:104px;min-height:48px;padding:8px 8px;
    display:flex;align-items:center;justify-content:center;gap:7px;
    border:1px solid var(--view-accent-line);border-radius:11px;
    background:rgba(255,255,255,.035);color:var(--view-text);text-decoration:none;
    transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.n2a-contact-btn:hover{transform:translateY(-2px);border-color:var(--view-accent);background:var(--view-accent-soft);}
.n2a-contact-btn span{width:24px;min-width:24px;text-align:center;color:var(--view-accent);font-size:16px;font-weight:720;line-height:1;}
.n2a-contact-btn strong{display:block;min-width:0;color:#fff;font-size:12px;font-weight:560;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

.n2a-main-photo,.n2a-video-frame,.n2a-prep-box--video{width:100%;height:236px;border-radius:13px;background:#111;display:block;object-fit:cover;}
.n2a-video-frame iframe{width:100%;height:100%;border:0;display:block;}
.n2a-prep-box{
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
    border:1px dashed var(--view-accent-line);border-radius:13px;
    background:radial-gradient(circle at 50% 35%,var(--view-accent-soft),transparent 48%),rgba(255,255,255,.025);
    color:var(--view-muted);text-align:center;
}
.n2a-prep-box span{color:var(--view-accent);font-size:28px;line-height:1;}
.n2a-prep-box strong{font-size:14px;font-weight:520;color:rgba(255,255,255,.78);}

.n2a-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;height:28px;}
.n2a-card-head h2{margin:0;}
.n2a-card-head span{color:var(--view-accent-2);font-size:13px;white-space:nowrap;}

.n2a-course-table{display:grid;grid-template-rows:auto 1fr;max-height:372px;overflow-y:auto;overflow-x:hidden;padding-right:8px;scrollbar-width:thin;scrollbar-color:var(--view-accent-line) rgba(255,255,255,.05);}
.n2a-course-table::-webkit-scrollbar{width:7px;}
.n2a-course-table::-webkit-scrollbar-thumb{background:var(--view-accent-line);border-radius:99px;}
.n2a-course-head,.n2a-course-row{display:grid;grid-template-columns:1fr .62fr minmax(0,2fr) .85fr;gap:16px;align-items:center;}
.n2a-course-head{position:sticky;top:0;z-index:3;padding:0 0 10px;color:var(--view-accent);font-size:12px;font-weight:680;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.16);background:linear-gradient(180deg,#111115,#0c0c10);}
.n2a-course-row{min-height:58px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.09);}
.n2a-course-row:last-child{border-bottom:0;}
.n2a-course-row strong{color:#fff;font-size:15px;font-weight:560;}
.n2a-course-row span,.n2a-course-row p{margin:0;color:var(--view-muted);font-size:14px;line-height:1.45;}
.n2a-course-row p{min-height:20px;}
.n2a-course-row em{color:var(--view-accent-2);font-style:normal;text-align:right;font-size:15px;font-weight:620;white-space:nowrap;}

.n2a-detail-card--about p,.n2a-address-text{margin:0;color:rgba(255,255,255,.78);font-size:15px;line-height:1.62;}
.n2a-detail-card--about{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--view-accent-line) rgba(255,255,255,.05);}
.n2a-detail-card--about p{min-height:72px;}

.n2a-feature-grid--all{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:stretch;}
.n2a-feature-box{min-height:74px;padding:10px 5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid var(--view-accent-line);border-radius:12px;background:rgba(255,255,255,.035);text-align:center;transition:opacity .18s ease,border-color .18s ease,background .18s ease,filter .18s ease;}
.n2a-feature-box span{font-size:19px;font-weight:750;line-height:1;}
.n2a-feature-box strong{font-size:10.5px;font-weight:560;line-height:1.2;word-break:keep-all;}
.n2a-feature-box.is-on{opacity:1;border-color:var(--view-accent-line);background:linear-gradient(180deg,var(--view-accent-soft),rgba(255,255,255,.025));filter:none;}
.n2a-feature-box.is-on span,.n2a-feature-box.is-on strong{color:var(--view-accent);}
.n2a-feature-box.is-off{opacity:.34;border-color:rgba(255,255,255,.13);background:rgba(255,255,255,.025);filter:grayscale(1);}
.n2a-feature-box.is-off span,.n2a-feature-box.is-off strong{color:rgba(255,255,255,.52);}

.n2a-staff-row{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;padding:0 2px 10px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--view-accent-line) rgba(255,255,255,.05);}
.n2a-staff-row::-webkit-scrollbar{height:6px;}
.n2a-staff-row::-webkit-scrollbar-thumb{background:var(--view-accent-line);border-radius:99px;}
.n2a-staff-card{flex:0 0 calc((100% - 20px)/3);min-width:calc((100% - 20px)/3);overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(255,255,255,.035);scroll-snap-align:start;}
.n2a-staff-card img{width:100%;height:178px;display:block;object-fit:cover;background:#111;}
.n2a-staff-card div{min-height:42px;padding:8px 9px 9px;}
.n2a-staff-card strong{display:block;color:var(--view-accent-2);font-size:13px;font-weight:620;}
.n2a-staff-card p{display:none;}

.n2a-venue-photos{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--view-accent-line) rgba(255,255,255,.05);}
.n2a-venue-photos::-webkit-scrollbar{height:6px;}
.n2a-venue-photos::-webkit-scrollbar-thumb{background:var(--view-accent-line);border-radius:99px;}
.n2a-venue-photos img{flex:0 0 calc((100% - 24px)/3);width:calc((100% - 24px)/3);height:198px;display:block;object-fit:cover;object-position:center top;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#111;scroll-snap-align:start;}
.n2a-detail-card--gallery .n2a-empty{min-height:160px;display:flex;align-items:center;}

.n2a-map-frame{overflow:hidden;margin-top:14px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:#101010;}
.n2a-map-frame iframe{display:block;width:100%;height:206px;border:0;filter:saturate(.78) brightness(.82);}
.n2a-prep-box--map{height:206px;margin-top:14px;}
.n2a-map-link{display:inline-flex;margin-top:10px;min-height:34px;padding:0 13px;align-items:center;justify-content:center;border:1px solid var(--view-accent-line);border-radius:10px;color:var(--view-accent-2);text-decoration:none;font-size:13px;}

.n2a-related-list{display:grid;gap:10px;max-height:270px;overflow-y:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:var(--view-accent-line) rgba(255,255,255,.05);}
.n2a-related-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;align-items:center;color:#fff;text-decoration:none;}
.n2a-related-card img{width:92px;aspect-ratio:16/10;object-fit:cover;border:1px solid rgba(255,255,255,.13);border-radius:10px;background:#111;}
.n2a-related-card strong{display:block;font-size:14px;font-weight:560;line-height:1.25;}
.n2a-related-card small{display:block;margin-top:3px;color:var(--view-muted);}

.n2a-review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:154px;overflow-y:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:var(--view-accent-line) rgba(255,255,255,.05);}
.n2a-review-card{padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.035);}
.n2a-review-card header{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.n2a-review-card strong{color:#fff;font-size:14px;font-weight:560;}
.n2a-review-card header span{color:var(--view-accent-2);white-space:nowrap;}
.n2a-review-card p{margin:8px 0 0;color:var(--view-muted);line-height:1.48;font-size:14px;}
.n2a-review-card blockquote{margin:12px 0 0;padding:10px 11px;border-left:3px solid var(--view-accent);border-radius:8px;background:var(--view-accent-soft);color:rgba(255,255,255,.82);font-size:13px;line-height:1.45;}
.n2a-review-form{display:grid;gap:10px;margin-top:14px;}
.n2a-review-form select,.n2a-review-form textarea{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:rgba(0,0,0,.35);color:#fff;padding:11px 12px;}
.n2a-review-form textarea{min-height:88px;}
.n2a-action-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border:1px solid var(--view-accent);border-radius:10px;background:linear-gradient(135deg,var(--view-accent-2),var(--view-accent));color:#090909;text-decoration:none;font-weight:650;}
.n2a-action-btn--outline{margin-top:12px;background:transparent;color:var(--view-accent-2);}
.n2a-empty{margin:0;color:var(--view-muted);line-height:1.55;}

@media(max-width:1420px) and (min-width:1181px){
    .n2a-view-grid--columns{grid-template-columns:minmax(500px,1.04fr) minmax(390px,.82fr) minmax(330px,.66fr);}
    .n2a-detail-card--intro h1{font-size:38px;}
    .n2a-contact-btn{width:96px;}
}
@media(max-width:1180px) and (min-width:821px){
    .n2a-view-grid--columns{
        grid-template-columns:minmax(420px,1fr) minmax(330px,.84fr);
        grid-template-rows:auto;
        grid-template-areas:
            "intro media"
            "courses staff"
            "courses about"
            "features address"
            "gallery related"
            "reviews reviews";
    }
    .n2a-detail-card--intro{border:0;background:transparent;box-shadow:none;}
    .n2a-staff-card{flex-basis:calc((100% - 20px)/3);min-width:calc((100% - 20px)/3);}
}

@media(max-width:820px){
    .n2a-view{padding:0 12px 90px;overflow:hidden;}
    .n2a-view-wrap{width:100%;padding:0;}
    .n2a-view-breadcrumb{padding:9px 0 10px;font-size:12px;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;scrollbar-width:none;}
    .n2a-view-breadcrumb::-webkit-scrollbar{display:none;}
    .n2a-view-grid--columns{display:flex;flex-direction:column;gap:12px;margin-top:8px;}
    .n2a-view-column{display:contents;}
    .n2a-detail-card{border-radius:13px;}
    .n2a-detail-card--intro{order:1;min-height:260px;padding:20px 16px 16px;border:1px solid var(--view-accent-line);background:rgba(0,0,0,.82);box-shadow:0 18px 45px rgba(0,0,0,.28);display:block;}
    .n2a-detail-card--courses{order:2;}
    .n2a-detail-card--features{order:3;}
    .n2a-detail-card--media{order:4;}
    .n2a-detail-card--about{order:5;}
    .n2a-detail-card--gallery{order:6;}
    .n2a-detail-card--staff{order:7;}
    .n2a-detail-card--address{order:8;}
    .n2a-detail-card--reviews{order:9;}
    .n2a-detail-card--related{order:10;}
    .n2a-mobile-hero{position:absolute;inset:0;display:block;background-size:cover;background-position:center;opacity:.35;filter:saturate(1.05) brightness(.78);}
    .n2a-detail-card--intro::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.56));}
    .n2a-detail-card--intro > *:not(.n2a-mobile-hero){position:relative;z-index:1;}
    .n2a-view-eyebrow{font-size:13px;}
    .n2a-detail-card--intro h1{font-size:32px;line-height:1.08;letter-spacing:-.035em;}
    .n2a-view-tagline{font-size:14px;}
    .n2a-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px;}
    .n2a-contact-btn{width:auto;min-height:68px;flex-direction:column;gap:5px;padding:8px 5px;}
    .n2a-contact-btn span{width:auto;min-width:0;font-size:18px;}
    .n2a-contact-btn strong{font-size:12px;white-space:normal;text-align:center;}
    .n2a-detail-card--courses,.n2a-detail-card--features,.n2a-detail-card--about,.n2a-detail-card--gallery,.n2a-detail-card--staff,.n2a-detail-card--address,.n2a-detail-card--related,.n2a-detail-card--reviews,.n2a-detail-card--media{padding:15px 14px;}
    .n2a-detail-card h2{font-size:17px;margin-bottom:12px;}
    .n2a-main-photo,.n2a-video-frame,.n2a-prep-box--video{height:auto;aspect-ratio:16/9;border-radius:13px;}
    .n2a-course-table{max-height:none;overflow:visible;padding-right:0;display:block;}
    .n2a-course-head{display:none;}
    .n2a-course-row{grid-template-columns:1fr auto;gap:8px 12px;min-height:0;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12);}
    .n2a-course-row strong{color:var(--view-accent-2);font-size:16px;}
    .n2a-course-row span{text-align:right;color:var(--view-accent);font-size:14px;}
    .n2a-course-row p{grid-column:1;font-size:14px;}
    .n2a-course-row em{grid-column:2;text-align:right;align-self:center;font-size:16px;color:var(--view-accent-2);}
    .n2a-feature-grid--all{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;overflow:visible;}
    .n2a-feature-grid--all .n2a-feature-box{min-height:54px;padding:7px 2px;border-radius:9px;}
    .n2a-feature-grid--all .n2a-feature-box span{font-size:16px;}
    .n2a-feature-grid--all .n2a-feature-box strong{margin-top:4px;font-size:8.5px;line-height:1.12;letter-spacing:-.05em;word-break:keep-all;}
    .n2a-staff-row,.n2a-venue-photos,.n2a-related-list{display:flex;overflow-x:auto;overflow-y:hidden;gap:10px;padding-bottom:8px;scroll-snap-type:x proximity;}
    .n2a-staff-card{flex:0 0 42%;min-width:42%;}
    .n2a-staff-card img{height:auto;aspect-ratio:3/4;object-position:center top;}
    .n2a-venue-photos img{flex:0 0 42%;min-width:42%;width:42%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center top;border-radius:12px;}
    .n2a-map-frame iframe{height:176px;}
    .n2a-prep-box--map{height:150px;}
    .n2a-related-card{flex:0 0 58%;display:block;}
    .n2a-related-card img{width:100%;aspect-ratio:16/9;margin-bottom:8px;}
    .n2a-review-list{grid-template-columns:1fr;max-height:none;overflow:visible;}
}
@media(max-width:460px){
    .n2a-view{padding-left:0;padding-right:0;}
    .n2a-feature-grid--all{gap:4px;}
    .n2a-feature-grid--all .n2a-feature-box{min-height:50px;padding:6px 1px;}
    .n2a-feature-grid--all .n2a-feature-box span{font-size:14px;}
    .n2a-feature-grid--all .n2a-feature-box strong{font-size:7.6px;}
    .n2a-staff-card,.n2a-venue-photos img{flex-basis:46%;min-width:46%;width:46%;}
    .n2a-related-card{flex-basis:72%;}
}
