
/*
 * NAL Desktop Final Audit Fix
 * Chỉ hoạt động từ 1051px để giữ nguyên mobile đã hoàn thiện.
 */

@media (min-width:1051px){

	:root{
		--nal-final-max:1440px;
		--nal-final-reading:900px;
		--nal-final-gap:clamp(20px,2vw,30px);
		--nal-final-section:clamp(82px,8vw,124px);
	}

	html,
	body{
		max-width:100%;
		overflow-x:clip!important;
	}

	.site-main{
		width:100%;
		overflow:clip;
	}

	.nal-container{
		width:min(var(--nal-final-max),100%);
		padding-inline:clamp(28px,4vw,64px);
	}

	.nal-section{
		padding-block:var(--nal-final-section);
	}

	/*
	 * Bảo vệ lỗi cũ: animation từng ghi đè transform của alignwide/alignfull.
	 */
	.entry-content .alignwide,
	.entry-content .alignwide.nal-reveal,
	.entry-content .alignwide.nal-reveal.is-visible{
		position:relative;
		left:50%;
		width:min(var(--nal-final-max),calc(100vw - 56px))!important;
		max-width:none!important;
		margin-left:0!important;
		transform:translateX(-50%)!important;
	}

	.entry-content .alignfull,
	.entry-content .alignfull.nal-reveal,
	.entry-content .alignfull.nal-reveal.is-visible{
		position:relative;
		left:50%;
		width:100vw!important;
		max-width:none!important;
		margin-left:0!important;
		transform:translateX(-50%)!important;
	}

	/* Header */
	.header-inner{
		max-width:var(--nal-final-max);
		margin-inline:auto;
	}

	.primary-navigation .menu{
		gap:clamp(17px,1.7vw,26px);
	}

	.primary-navigation a{
		font-size:10px;
		letter-spacing:.105em;
	}

	/* ---------- Home ---------- */
	.nal-final-home .home-hero{
		grid-template-columns:minmax(0,1fr) minmax(0,1fr);
		min-height:clamp(690px,78vh,830px);
		max-height:880px;
	}

	.nal-final-home .hero-copy{
		min-width:0;
		padding:clamp(60px,6vw,92px) clamp(42px,5vw,78px);
	}

	.nal-final-home .hero-copy h1{
		max-width:760px;
		margin:32px 0;
		font-size:clamp(68px,7.4vw,118px);
		line-height:.86;
		letter-spacing:-.055em;
		overflow-wrap:anywhere;
	}

	.nal-final-home .hero-bottom{
		align-items:flex-end;
		gap:40px;
	}

	.nal-final-home .hero-bottom p{
		max-width:480px;
		font-size:15px;
		line-height:1.75;
	}

	.nal-final-home .hero-media{
		min-width:0;
		min-height:100%;
	}

	.nal-final-home .hero-media>img{
		object-position:center;
	}

	.nal-final-home .home-editor-content .entry-content{
		width:min(1180px,calc(100% - 80px));
		padding-inline:0;
	}

	.nal-final-home .section-heading{
		display:grid;
		grid-template-columns:minmax(0,1.15fr) minmax(300px,.55fr);
		align-items:end;
		gap:clamp(50px,7vw,110px);
	}

	.nal-final-home .section-heading h2{
		font-size:clamp(62px,6.5vw,100px);
	}

	.nal-final-home .section-heading>p{
		max-width:500px;
	}

	.nal-final-home .projects-grid{
		display:grid;
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:var(--nal-final-gap);
	}

	.nal-final-home .projects-grid .project-card,
	.nal-final-home .projects-grid .project-card:nth-child(n){
		grid-column:auto!important;
		min-width:0;
		height:100%;
	}

	.nal-final-home .projects-grid .card-image{
		aspect-ratio:4/3;
	}

	.nal-final-home .course-grid{
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:var(--nal-final-gap);
		align-items:stretch;
	}

	.nal-final-home .project-card,
	.nal-final-home .course-card{
		height:100%;
	}

	.nal-final-home .course-card .card-image{
		aspect-ratio:4/3;
	}

	.nal-final-home .trend-list{
		max-width:1240px;
	}

	.nal-final-home .event-feature{
		grid-template-columns:minmax(0,1fr) minmax(0,1fr);
		min-height:700px;
		max-height:820px;
	}

	.nal-final-home .event-image,
	.nal-final-home .event-copy{
		min-width:0;
	}

	.nal-final-home .event-copy{
		padding:clamp(60px,6vw,92px);
	}

	/* ---------- Archive hero dùng chung ---------- */
	.nal-final-projects .page-hero,
	.nal-final-courses .page-hero,
	.nal-final-trends .page-hero,
	.nal-final-events .page-hero{
		padding:clamp(72px,7vw,108px) 0 58px;
	}

	.nal-final-projects .page-hero-inner,
	.nal-final-courses .page-hero-inner,
	.nal-final-trends .page-hero-inner,
	.nal-final-events .page-hero-inner{
		grid-template-columns:minmax(0,1.08fr) minmax(320px,.62fr);
		gap:clamp(50px,7vw,112px);
	}

	.nal-final-projects .page-hero h1,
	.nal-final-courses .page-hero h1,
	.nal-final-trends .page-hero h1,
	.nal-final-events .page-hero h1{
		font-size:clamp(82px,8.4vw,130px);
		line-height:.84;
		letter-spacing:-.055em;
	}

	.nal-final-projects .page-intro,
	.nal-final-courses .page-intro,
	.nal-final-trends .page-intro,
	.nal-final-events .page-intro{
		max-width:480px;
		font-size:15px;
		line-height:1.75;
	}

	.nal-final-projects .archive-filters,
	.nal-final-courses .archive-filters,
	.nal-final-trends .archive-filters,
	.nal-final-events .archive-filters{
		margin-bottom:38px;
	}

	/* ---------- Projects archive ---------- */
	.nal-final-projects .projects-grid{
		display:grid;
		grid-template-columns:repeat(2,minmax(0,1fr));
		gap:var(--nal-final-gap);
		align-items:stretch;
	}

	.nal-final-projects .projects-grid .project-card,
	.nal-final-projects .projects-grid .project-card:nth-child(n){
		grid-column:auto!important;
		min-width:0;
		height:100%;
	}

	.nal-final-projects .project-card>a{
		display:flex;
		flex-direction:column;
		height:100%;
	}

	.nal-final-projects .card-image{
		aspect-ratio:16/10;
	}

	.nal-final-projects .project-card h3{
		margin-top:auto;
		font-size:clamp(34px,3.2vw,50px);
	}

	/* ---------- Courses archive ---------- */
	.nal-final-courses .course-grid{
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:var(--nal-final-gap);
		align-items:stretch;
	}

	.nal-final-courses .course-card{
		min-width:0;
		height:100%;
	}

	.nal-final-courses .course-card .card-image{
		aspect-ratio:4/3;
	}

	.nal-final-courses .course-body{
		padding:26px;
	}

	.nal-final-courses .course-card h3{
		font-size:clamp(31px,2.7vw,42px);
		line-height:1;
		overflow-wrap:anywhere;
	}

	.nal-final-courses .course-facts{
		margin-top:auto;
	}

	/* ---------- Trends archive ---------- */
	.nal-final-trends .trend-list{
		display:grid;
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:var(--nal-final-gap);
		border-top:0;
	}

	.nal-final-trends .trend-row{
		display:flex;
		flex-direction:column;
		align-items:flex-start;
		min-width:0;
		min-height:360px;
		padding:30px;
		border:1px solid var(--nal-line);
		background:color-mix(in srgb,var(--nal-paper) 82%,transparent);
	}

	.nal-final-trends .trend-row:hover{
		padding-left:30px;
		transform:translateY(-5px);
		box-shadow:0 20px 48px rgba(18,18,18,.08);
	}

	.nal-final-trends .trend-number{
		margin-bottom:48px;
	}

	.nal-final-trends .trend-row h3{
		font-size:clamp(31px,2.7vw,42px);
		line-height:1.02;
	}

	.nal-final-trends .trend-row p{
		display:block;
		margin:18px 0 28px;
		font-size:14px;
		line-height:1.7;
	}

	.nal-final-trends .trend-row>span:last-child{
		margin-top:auto;
	}

	/* ---------- Events archive ---------- */
	.nal-final-events .editorial-grid{
		display:block;
	}

	.nal-final-events .event-card{
		width:min(980px,100%);
		margin-inline:auto;
	}

	.nal-final-events .event-card>a{
		display:grid;
		grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
		min-height:430px;
	}

	.nal-final-events .event-card .card-image{
		aspect-ratio:auto;
		min-height:430px;
	}

	.nal-final-events .event-card .card-meta,
	.nal-final-events .event-card h3{
		grid-column:2;
	}

	.nal-final-events .event-card .card-meta{
		align-self:end;
		padding:40px 34px 12px;
	}

	.nal-final-events .event-card h3{
		align-self:start;
		padding:0 34px 40px;
		font-size:clamp(42px,4vw,64px);
	}

	/* ---------- Detail hero chung ---------- */
	.nal-final-project-detail .detail-hero,
	.nal-final-course-detail .detail-hero,
	.nal-final-event-detail .detail-hero{
		grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
		min-height:clamp(680px,74vh,820px);
		max-height:860px;
	}

	.nal-final-project-detail .detail-copy,
	.nal-final-course-detail .detail-copy,
	.nal-final-event-detail .detail-copy{
		min-width:0;
		padding:clamp(56px,5.6vw,88px) clamp(44px,5vw,78px);
	}

	.nal-final-project-detail .detail-copy h1,
	.nal-final-course-detail .detail-copy h1,
	.nal-final-event-detail .detail-copy h1{
		max-width:760px;
		margin:24px 0;
		font-size:clamp(58px,5.9vw,92px);
		line-height:.89;
		letter-spacing:-.05em;
		overflow-wrap:anywhere;
	}

	.nal-final-project-detail .detail-summary,
	.nal-final-course-detail .detail-summary,
	.nal-final-event-detail .detail-summary{
		max-width:620px;
		font-size:15px;
		line-height:1.75;
	}

	.nal-final-project-detail .detail-media,
	.nal-final-course-detail .detail-media,
	.nal-final-event-detail .detail-media{
		min-width:0;
		min-height:100%;
		max-height:860px;
	}

	.nal-final-project-detail .detail-media img,
	.nal-final-course-detail .detail-media img,
	.nal-final-event-detail .detail-media img{
		width:100%;
		height:100%;
		object-fit:cover;
		object-position:center;
	}

	.nal-final-project-detail .entry-content,
	.nal-final-course-detail .entry-content,
	.nal-final-event-detail .entry-content{
		width:min(var(--nal-final-reading),calc(100% - 80px));
	}

	.nal-final-project-detail .entry-content h2,
	.nal-final-course-detail .entry-content h2,
	.nal-final-event-detail .entry-content h2{
		font-size:clamp(44px,4.5vw,68px);
	}

	.nal-final-project-detail .entry-content h3,
	.nal-final-course-detail .entry-content h3,
	.nal-final-event-detail .entry-content h3{
		font-size:clamp(31px,3vw,45px);
	}

	.nal-final-project-detail .entry-content p,
	.nal-final-project-detail .entry-content li,
	.nal-final-course-detail .entry-content p,
	.nal-final-course-detail .entry-content li,
	.nal-final-event-detail .entry-content p,
	.nal-final-event-detail .entry-content li{
		font-size:18px;
		line-height:1.78;
	}

	/* Project album: masonry giữ nguyên tỉ lệ ảnh */
	.nal-final-project-detail .project-gallery{
		display:block!important;
		columns:3;
		column-gap:var(--nal-final-gap);
	}

	.nal-final-project-detail .project-gallery figure,
	.nal-final-project-detail .project-gallery figure:nth-child(n){
		display:inline-block;
		width:100%;
		margin:0 0 var(--nal-final-gap);
		break-inside:avoid;
		overflow:hidden;
	}

	.nal-final-project-detail .project-gallery img{
		width:100%;
		height:auto;
		object-fit:contain;
	}

	/* Course/Event gallery */
	.nal-final-course-detail .project-gallery,
	.nal-final-event-detail .project-gallery{
		display:grid;
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:var(--nal-final-gap);
	}

	.nal-final-course-detail .project-gallery figure,
	.nal-final-course-detail .project-gallery figure:nth-child(n),
	.nal-final-event-detail .project-gallery figure,
	.nal-final-event-detail .project-gallery figure:nth-child(n){
		grid-column:auto!important;
		margin:0;
		aspect-ratio:3/4;
		overflow:hidden;
	}

	.nal-final-course-detail .project-gallery img,
	.nal-final-event-detail .project-gallery img{
		width:100%;
		height:100%;
		object-fit:cover;
	}

	.nal-final-project-detail .credits-block,
	.nal-final-course-detail .enrollment-box,
	.nal-final-event-detail .enrollment-box{
		width:min(1220px,calc(100% - 80px));
		margin-inline:auto;
	}

	.nal-final-course-detail .enrollment-box,
	.nal-final-event-detail .enrollment-box{
		grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);
		gap:clamp(50px,7vw,110px);
		padding:clamp(54px,6vw,84px);
		border:1px solid var(--nal-line);
		background:color-mix(in srgb,var(--nal-paper) 88%,var(--nal-bg));
	}

	.nal-final-course-detail .enrollment-box>div:last-child,
	.nal-final-event-detail .enrollment-box>div:last-child{
		max-width:none;
		justify-self:stretch;
	}

	.nal-final-course-detail .enrollment-box .nal-button,
	.nal-final-event-detail .enrollment-box .nal-button{
		width:100%;
	}

	/* ---------- Trend detail ---------- */
	.nal-final-trend-detail .article-hero{
		padding:clamp(82px,8vw,126px) 0 58px;
	}

	.nal-final-trend-detail .article-hero .nal-container{
		width:min(1220px,100%);
	}

	.nal-final-trend-detail .article-hero h1{
		max-width:1120px;
		font-size:clamp(72px,7.4vw,116px);
		line-height:.88;
		letter-spacing:-.052em;
	}

	.nal-final-trend-detail .article-deck{
		max-width:850px;
		font-size:clamp(23px,2.4vw,34px);
	}

	.nal-final-trend-detail .article-featured{
		width:min(1280px,100%);
	}

	.nal-final-trend-detail .article-featured img{
		width:100%;
		max-height:760px;
		object-fit:cover;
	}

	.nal-final-trend-detail .article-content{
		width:min(860px,calc(100% - 80px));
	}

	.nal-final-trend-detail .article-content .wp-block-gallery{
		position:relative;
		left:50%;
		width:min(1280px,calc(100vw - 80px));
		margin-left:0;
		transform:translateX(-50%);
		display:grid;
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:18px;
	}

	.nal-final-trend-detail .article-content .wp-block-gallery figure{
		margin:0;
	}

	.nal-final-trend-detail .article-content .wp-block-gallery img{
		width:100%;
		height:100%;
		aspect-ratio:4/5;
		object-fit:cover;
	}

	/* ---------- About hiện tại và About Layout Polish ---------- */
	.nal-final-about .page-hero{
		padding:clamp(72px,7vw,108px) 0 56px;
	}

	.nal-final-about .page-hero-inner{
		grid-template-columns:minmax(0,1.05fr) minmax(320px,.65fr);
		gap:clamp(50px,7vw,110px);
	}

	.nal-final-about .page-hero h1{
		font-size:clamp(82px,8.5vw,132px);
		line-height:.84;
	}

	.nal-final-about .entry-content{
		width:min(1240px,calc(100% - 80px));
	}

	.nal-final-about .nal-final-about-profile{
		display:grid;
		grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
		gap:clamp(48px,7vw,110px);
		align-items:center;
		padding:clamp(76px,8vw,122px) 0;
	}

	.nal-final-about .nal-final-about-profile__media{
		min-width:0;
	}

	.nal-final-about .nal-final-about-profile__media figure{
		margin:0;
	}

	.nal-final-about .nal-final-about-profile__media img{
		width:100%;
		aspect-ratio:4/5;
		object-fit:cover;
	}

	.nal-final-about .nal-final-about-profile__copy h2{
		margin:0 0 28px;
		font-size:clamp(58px,6vw,92px);
		line-height:.92;
	}

	.nal-final-about .nal-final-about-profile__copy p{
		font-size:18px;
		line-height:1.78;
	}

	.nal-final-about .nal-final-about-journey{
		padding:clamp(76px,8vw,122px) 0;
		border-top:1px solid var(--nal-line);
	}

	.nal-final-about .nal-final-about-journey__header{
		max-width:880px;
		margin-bottom:56px;
	}

	.nal-final-about .nal-final-about-journey__header h2{
		font-size:clamp(52px,5.5vw,84px);
		line-height:.94;
	}

	.nal-final-about .nal-final-about-journey__grid{
		display:grid;
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:var(--nal-final-gap);
	}

	.nal-final-about .nal-final-about-journey__card{
		display:flex;
		flex-direction:column;
		min-width:0;
		padding:28px;
		border:1px solid var(--nal-line);
		background:var(--nal-paper);
	}

	.nal-final-about .nal-final-about-journey__card h3{
		font-size:clamp(28px,2.5vw,40px);
		line-height:1;
	}

	.nal-final-about .nal-final-about-journey__card p{
		font-size:15px;
		line-height:1.7;
	}

	.nal-final-about .nal-final-about-journey__card figure{
		order:-1;
		margin:0 0 26px;
	}

	.nal-final-about .nal-final-about-journey__card img{
		width:100%;
		aspect-ratio:4/3;
		object-fit:cover;
	}

	/* Nếu About Layout Polish mới đã chạy */
	.nal-final-about .nal-about-profile,
	.nal-final-about .nal-about-stats,
	.nal-final-about .nal-about-journey,
	.nal-final-about .nal-about-closing{
		width:min(1240px,calc(100vw - 80px))!important;
	}

	/* ---------- Footer ---------- */
	.site-footer>.nal-container{
		width:min(var(--nal-final-max),100%);
	}

	.footer-grid{
		grid-template-columns:minmax(0,1.35fr) minmax(180px,.45fr) minmax(260px,.6fr);
		gap:clamp(40px,6vw,90px);
	}

	.nal-footer-form{
		grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);
		gap:clamp(52px,7vw,100px);
	}

	.nal-footer-form__body,
	.nal-footer-form .form-grid{
		min-width:0;
	}
}

/* Laptop desktop nhỏ: vẫn giữ 2 cột ở gallery và Courses */
@media (min-width:1051px) and (max-width:1199px){

	.nal-final-home .projects-grid,
	.nal-final-home .course-grid,
	.nal-final-courses .course-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.nal-final-trends .trend-list{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.nal-final-project-detail .project-gallery{
		columns:2;
	}

	.nal-final-course-detail .project-gallery,
	.nal-final-event-detail .project-gallery,
	.nal-final-trend-detail .article-content .wp-block-gallery{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}
