/* sk-home.css — chuyển thể từ terra.css (Terra Culture Lab) cho trang chủ Sân Khấu.
   Chỉ style phần nội dung (Hero / What we do / Projects / About) — header/footer dùng của Kadence. */

.sk-wrap{max-width:1180px;margin:0 auto;padding-left:clamp(24px,6vw,80px);padding-right:clamp(24px,6vw,80px)}

.sk-eyebrow{display:block;font:500 12px/1 var(--sk-font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--sk-accent);margin:0}
.sk-eyebrow--light{color:var(--sk-accent)}
.sk-rule{display:block;width:46px;height:2px;background:var(--sk-accent);margin:14px 0 26px}
.sk-link{display:inline-flex;align-items:center;gap:12px;font:500 12px/1 var(--sk-font-display);letter-spacing:.08em;text-transform:uppercase;color:#000;text-decoration:none;white-space:nowrap}
.sk-link span{color:var(--sk-accent);font-size:14px}
.sk-link:hover{color:var(--sk-accent)}
.sk-link--light{color:var(--sk-heading)}
.sk-btn{display:inline-flex;align-items:center;gap:14px;background:var(--sk-accent);color:#fff!important;padding:15px 26px;font:500 13px/1 var(--sk-font-display);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-radius:0}
.sk-btn:hover{background:var(--sk-accent-dark);color:#fff!important}

/* ==========================================================================
   Hero — "LA SEMAINE — Théâtre vietnamien en France" (files/SPEC.md)
   ========================================================================== */
/* background:transparent (không phải --sk-hero-bg đặc) — mọi trang giờ dùng chung 1 ảnh nền
   hoạ tiết đình chùa ở cấp #wrapper (header.php), để lộ xuyên qua thay vì che kín. */
.sk-hero-trad-wrap{position:relative;overflow:hidden;background:transparent}
.sk-hero-v2{position:relative;display:flex;align-items:center}
.sk-hero-v2-inner{position:relative;z-index:2;width:100%;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-start;padding-top:clamp(30px,4vw,54px)}
.sk-hero-v2-mask{position:absolute;top:0;right:0;height:100%;max-height:100%;width:auto;max-width:50%;object-fit:contain;object-position:top right;z-index:1;pointer-events:none}
.sk-hero-v2-text{max-width:640px;padding:0}
.sk-hero-v2-eyebrow{font-family:var(--sk-font-display);font-weight:600;font-size:clamp(46px,6.3vw,104px);line-height:.95;letter-spacing:.01em;color:#000;margin:0;text-transform:uppercase}
.sk-hero-v2-sub{font-family:var(--sk-font-display);font-weight:600;font-size:clamp(24px,3vw,42px);line-height:1.15;letter-spacing:.01em;color:var(--sk-accent);margin:6px 0 0;text-transform:uppercase}
.sk-rule-short{display:block;width:75px;height:2px;background:#000;margin:22px 0}
.sk-hero-v2-dates{font-family:var(--sk-font-display);font-weight:400;font-size:clamp(18px,1.8vw,26px);letter-spacing:.08em;color:#000;margin:0 0 14px}
.sk-hero-v2-tagline{font-family:var(--sk-font-serif-italic);font-style:italic;font-size:clamp(18px,1.8vw,25px);color:var(--sk-accent-dark);margin:0}
.sk-rule-long{display:block;width:100%;max-width:542px;height:2px;background:rgba(0,0,0,.25);margin:10px 0}

.sk-countdown{display:flex;gap:14px;flex-wrap:wrap}
.sk-countdown-box{background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:4px;min-width:82px;padding:12px 10px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.05)}
.sk-cd-num{display:block;font-family:var(--sk-font-display);font-weight:600;font-size:26px;color:#000;line-height:1.1}
.sk-cd-label{display:block;font:500 10px/1 var(--sk-font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--sk-muted);margin-top:4px}
.sk-hero-programme-link{margin-top:22px}

@media (max-width:420px){
  .sk-countdown{gap:8px;flex-wrap:nowrap}
  .sk-countdown-box{min-width:0;flex:1;padding:8px 4px;border-radius:3px}
  .sk-cd-num{font-size:19px}
  .sk-cd-label{font-size:8.5px;letter-spacing:.06em;margin-top:2px}
}

.sk-hero-v2-cta{display:inline-flex;align-items:center;gap:10px;font:500 12px/1 var(--sk-font-display);letter-spacing:.08em;text-transform:uppercase;color:#000;text-decoration:none}
.sk-hero-v2-cta span{color:var(--sk-accent)}
.sk-hero-v2-cta:hover{color:var(--sk-accent)}

@media (max-width:900px){
  .sk-hero-v2{min-height:0}
  .sk-hero-v2-mask{position:relative;max-width:100%;width:100%;height:280px;object-position:center 20%;order:-1}
  .sk-hero-v2-inner{display:flex;flex-direction:column}
}

/* ==========================================================================
   Section "TRADITION — CRÉATION — DIALOGUE" (thay cho khối "Chúng tôi làm gì" cũ)
   ========================================================================== */
.sk-trad{position:relative;z-index:2;background:linear-gradient(to bottom,rgba(228,211,168,0) 0,rgba(228,211,168,.55) 70px);padding:10px 0}
.sk-trad-heading{font-family:var(--sk-font-display);font-weight:500;font-size:clamp(22px,2.3vw,34px);letter-spacing:.02em;text-transform:uppercase;color:#000;text-align:center;margin:0}
.sk-trad-sub{font-family:var(--sk-font-serif-italic);font-style:italic;font-size:clamp(16px,1.4vw,21px);color:#000;text-align:center;margin:10px 0 0}
.sk-trad-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:10px}
@media (max-width:720px){
  .sk-trad-cards{grid-template-columns:1fr}
}
.sk-trad-card{display:block;text-align:center;text-decoration:none;color:inherit;cursor:pointer}
.sk-trad-card-media{aspect-ratio:16/8;overflow:hidden;background:#000}
.sk-trad-card-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.sk-trad-card:hover .sk-trad-card-media img{transform:scale(1.04)}
.sk-trad-card h3{font-family:var(--sk-font-display);font-weight:500;font-size:clamp(18px,1.6vw,24px);letter-spacing:.03em;color:var(--sk-card-heading);margin:10px 0}
.sk-trad-card p{font-family:var(--sk-font-serif-italic);font-style:italic;font-size:15px;line-height:1.6;color:#000;max-width:380px;margin:0 auto}

/* Projects */
.sk-projects{background:var(--sk-base)}
.sk-projects .sk-wrap{padding-top:17px;padding-bottom:20px}
.sk-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:0;flex-wrap:wrap}
.sk-section-head .sk-rule{margin:14px 0 17px}
.sk-project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media (max-width:900px){
  .sk-project-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:480px){
  .sk-project-grid{grid-template-columns:1fr}
}
.sk-project-media{display:block;aspect-ratio:4/3;background:var(--sk-hairline,#DED5C6);overflow:hidden}
.sk-project-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.sk-project-media:hover img{transform:scale(1.04)}
.sk-project h3{font-family:"Playfair Display",serif;font-weight:500;font-size:16px;letter-spacing:.04em;text-transform:uppercase;margin:5px 0 6px;color:var(--sk-heading)}
.sk-project h3 a{color:inherit;text-decoration:none}
.sk-project h3 a:hover{color:var(--sk-accent)}
.sk-project .sk-cat{font:500 11px/1 Barlow,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--sk-accent)}
.sk-project p.sk-desc{font-size:13.5px;line-height:1.75;margin:10px 0 14px;color:var(--sk-body);text-wrap:pretty}

/* About */
.sk-about{background:var(--sk-base);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start}
/* Ảnh tỉ lệ điện ảnh rộng — giảm chiều cao còn 2/3 so với 16:9 (8:3 ≈ 2.35:1 màn ảnh rộng) */
.sk-about-media{position:relative;aspect-ratio:8/3;background:#DED5C6;overflow:hidden}
.sk-about-media img{display:block;width:100%;height:100%;object-fit:cover}
.sk-about-text{display:flex;flex-direction:column;justify-content:flex-start;max-width:560px;padding:0 clamp(20px,4vw,62px)}
.sk-about-text .sk-rule{margin:8px 0 12px}
.sk-about-text h2{font-family:"Playfair Display",serif;font-weight:400;font-size:clamp(22px,2.1vw,30px);line-height:1.25;margin:0 0 12px;color:var(--sk-heading)}
.sk-about-text p{font-size:14px;line-height:1.65;max-width:470px;margin:0 0 14px;color:var(--sk-body);text-wrap:pretty}

.sk-placeholder-tag{display:inline-block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--sk-accent);background:rgba(160,44,19,.1);padding:3px 8px;margin-bottom:10px}

/* ==========================================================================
   Trang tĩnh (Lễ hội/Chương trình/Nghệ sĩ/Địa điểm/Nhật ký...) — page.php
   ========================================================================== */
.sk-page-wrap{min-height:480px;padding:clamp(48px,6vw,80px) 0 clamp(64px,7vw,100px)}
.sk-page-inner{position:relative;z-index:2}
.sk-page-title{font-family:var(--sk-font-display);font-weight:600;font-size:clamp(28px,4vw,52px);letter-spacing:.01em;text-transform:uppercase;color:var(--sk-heading);text-align:center;margin:0 0 clamp(32px,4vw,56px)}
.sk-page-content{background:#fff;box-shadow:0 6px 24px rgba(0,0,0,.06);padding:clamp(28px,4vw,48px);max-width:820px;margin:0 auto;font-size:15px;line-height:1.8;color:var(--sk-body)}
.sk-page-content p{margin:0 0 1em}
.sk-page-content p:last-child{margin-bottom:0}

/* ==========================================================================
   Trang Chương trình (archive-sk_project.php) — mỗi tiết mục 1 khối full-width
   ========================================================================== */
/* Ghi đè padding-top/bottom của .sk-page-wrap (48-80px/64-100px) còn 10px —
   khoảng cách Menu-header→khối ảnh đầu tiên và khối text cuối→Footer quá lớn. */
.sk-programme-wrap.sk-page-wrap{padding-top:10px;padding-bottom:10px}
.sk-programme-list{display:flex;flex-direction:column;gap:10px}
.sk-programme-item{background:var(--sk-hero-bg)}

/* Gallery full-bleed: thoát khỏi sk-wrap, chạy hết chiều ngang trình duyệt */
.sk-programme-gallery{position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;width:100vw;display:flex;gap:3px;height:clamp(260px,42vw,520px)}
.sk-programme-image{position:relative;flex:1;overflow:hidden;min-width:0}
.sk-programme-image img{width:100%;height:100%;object-fit:cover;display:block}
/* feather nhẹ mép trên/dưới của cả dải ảnh, hoà dần vào khối chữ ngay bên dưới */
.sk-programme-gallery::after{content:"";position:absolute;left:0;right:0;bottom:0;height:38%;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,0),var(--sk-hero-bg) 96%)}
.sk-programme-gallery-1 .sk-programme-image{flex:1 1 100%}

.sk-programme-body{max-width:1180px;margin:0 auto;padding:clamp(4px,2vw,10px) clamp(24px,6vw,80px) clamp(36px,5vw,56px)}
.sk-programme-eyebrow{font-family:var(--sk-font-display);font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--sk-accent);margin:0 0 10px}
.sk-programme-title{font-family:var(--sk-font-display);font-weight:600;font-size:clamp(24px,3.4vw,38px);text-transform:uppercase;letter-spacing:.01em;color:var(--sk-heading);margin:0 0 22px}
.sk-programme-meta{display:flex;flex-wrap:wrap;gap:10px 48px;margin:0 0 26px;padding-bottom:22px;border-bottom:1px solid rgba(27,21,18,.14)}
.sk-programme-meta-row{display:flex;flex-direction:column;gap:4px;min-width:220px}
.sk-programme-meta-label{font-family:var(--sk-font-display);font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--sk-muted)}
.sk-programme-meta-value{font-size:14px;line-height:1.6;color:var(--sk-body)}
.sk-programme-content{font-size:15.5px;line-height:1.9;color:var(--sk-body);text-align:justify;column-width:420px;column-gap:56px}
.sk-programme-content p{margin:0 0 18px}
.sk-programme-content p:last-child{margin-bottom:0}
.sk-programme-cast{margin-top:30px;padding-top:22px;border-top:1px solid rgba(27,21,18,.14);column-width:320px;column-gap:48px}
.sk-programme-cast-label{font-family:var(--sk-font-display);font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--sk-muted);margin:0 0 8px;column-span:all}
.sk-programme-cast-text{font-size:13.5px;line-height:1.85;color:var(--sk-body);white-space:pre-line}
@media (max-width:700px){
	.sk-programme-content,.sk-programme-cast{column-width:auto;column-count:1;text-align:left}
}

.sk-reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
.sk-reveal.is-visible{opacity:1;transform:translateY(0)}
@media (prefers-reduced-motion:reduce){.sk-reveal{transition:none}}

/* ==========================================================================
   Trang Lễ hội (giới thiệu) — page-le-hoi.php
   Chữ nằm trực tiếp trên nền hoạ tiết + ảnh mặt nạ lớn, không dùng khối trắng.
   ========================================================================== */
.sk-lehoi-hero{padding-top:clamp(30px,5vw,60px)}
.sk-lehoi-frame{position:relative;max-width:760px;margin:0 auto}
.sk-lehoi-mask{position:absolute;top:0;left:50%;transform:translateX(-50%);width:78%;max-width:520px;height:auto;object-fit:contain;opacity:.5;z-index:1;pointer-events:none}
.sk-lehoi-text{position:relative;z-index:2}
.sk-lehoi-text p{font-size:15.5px;line-height:1.9;color:var(--sk-body);margin:0 0 20px;text-align:justify;text-shadow:0 0 14px var(--sk-hero-bg),0 0 6px var(--sk-hero-bg),0 0 2px var(--sk-hero-bg)}
.sk-lehoi-text p:nth-child(-n+2){font-family:var(--sk-font-serif-italic);font-style:italic;font-size:clamp(19px,2.6vw,25px);line-height:1.5;color:var(--sk-accent-dark);margin-bottom:16px}
.sk-lehoi-text p:nth-child(2){margin-bottom:30px}
.sk-lehoi-text h2{font-family:var(--sk-font-display);font-weight:600;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(20px,2.8vw,28px);color:var(--sk-accent);margin:44px 0 18px;text-shadow:0 0 14px var(--sk-hero-bg),0 0 6px var(--sk-hero-bg)}
@media (max-width:780px){
	.sk-lehoi-mask{width:92%}
}

/* ==========================================================================
   Trang chủ — khối "Chương trình được bảo trợ bởi", ngay trên footer.
   Nằm trong .sk-hero-trad-wrap để dùng chung 1 nền hoạ tiết sân khấu (ảnh chùa)
   với toàn bộ phần trên của trang, chỉ lệch màu rất nhẹ để phân tách nội dung.
   ========================================================================== */
.sk-sponsors-section{position:relative;z-index:2;background:rgba(228,211,168,.55);padding:10px 0}
.sk-sponsors-inner{text-align:center}
.sk-sponsors-heading{margin:0 0 14px;font:600 22px/1.2 var(--sk-font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--sk-accent);}
.sk-sponsors-names{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;row-gap:10px;column-gap:14px;max-width:900px;margin:0 auto}
.sk-sponsors-name{font:500 13px/1.4 var(--sk-font-display);letter-spacing:.02em;color:var(--sk-body);white-space:nowrap}
.sk-sponsors-sep{color:var(--sk-muted);opacity:.5}
@media (max-width:600px){
	.sk-sponsors-heading{font-size:18px}
	.sk-sponsors-names{column-gap:0}
	.sk-sponsors-sep{display:none}
	.sk-sponsors-name{width:100%;white-space:normal}
}
