/* Irish District — Irish Sports News (frontend)
 * Premium, warm, Irish-inspired editorial block. Self-scoped under .hisn-section
 * so it can never leak into the theme, store or product pages.
 */

.hisn-section{
	--hisn-green:#0b3d2e;
	--hisn-green-deep:#072a20;
	--hisn-cream:#f7f3e8;
	--hisn-navy:#13233f;
	--hisn-gold:#c8a14b;
	--hisn-ink:#1d2a24;
	--hisn-muted:#5d6b63;
	--hisn-line:rgba(11,61,46,.12);
	--hisn-radius:18px;
	box-sizing:border-box;
	width:100%;
	margin:0 auto;
	padding:clamp(26px,4vw,52px) clamp(16px,4vw,40px);
	background:
		radial-gradient(120% 120% at 0% 0%, rgba(200,161,75,.10) 0%, rgba(200,161,75,0) 42%),
		linear-gradient(180deg,var(--hisn-cream) 0%, #fffdf7 100%);
	border-top:3px solid var(--hisn-gold);
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	color:var(--hisn-ink);
}
.hisn-section *{box-sizing:border-box;}
.hisn-inner{max-width:1180px;margin:0 auto;}

/* Header */
.hisn-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:clamp(18px,2.4vw,30px);}
.hisn-eyebrow{display:inline-block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--hisn-gold);margin-bottom:8px;}
.hisn-title{margin:0;font-size:clamp(24px,3.4vw,38px);line-height:1.08;font-weight:800;color:var(--hisn-green);letter-spacing:-.01em;}
.hisn-subtitle{margin:8px 0 0;color:var(--hisn-muted);font-size:clamp(14px,1.5vw,16px);max-width:60ch;}

/* Featured layout */
.hisn-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,0.95fr);gap:clamp(16px,2vw,28px);align-items:start;}
.hisn-grid{display:grid;gap:clamp(12px,1.4vw,16px);}
.hisn-grid--rest{grid-template-columns:1fr;}
.hisn-style-grid .hisn-grid{grid-template-columns:repeat(3,1fr);}

/* Desktop: compact horizontal story rows beside the lead */
@media (min-width:881px){
	.hisn-style-featured_grid .hisn-grid--rest .hisn-card{border-radius:14px;}
	.hisn-style-featured_grid .hisn-grid--rest .hisn-card-link{
		flex-direction:row;
		align-items:stretch;
		min-height:108px;
	}
	.hisn-style-featured_grid .hisn-grid--rest .hisn-thumb{
		flex:0 0 132px;
		width:132px;
		aspect-ratio:auto;
		min-height:100%;
	}
	.hisn-style-featured_grid .hisn-grid--rest .hisn-body{
		padding:12px 14px 13px;
		gap:6px;
		justify-content:center;
	}
	.hisn-style-featured_grid .hisn-grid--rest .hisn-headline{
		font-size:15px;
		line-height:1.25;
		display:-webkit-box;
		-webkit-line-clamp:3;
		-webkit-box-orient:vertical;
		overflow:hidden;
	}
	.hisn-style-featured_grid .hisn-grid--rest .hisn-summary{display:none;}
	.hisn-style-featured_grid .hisn-grid--rest .hisn-readmore{display:none;}
	.hisn-style-featured_grid .hisn-grid--rest .hisn-foot{padding-top:2px;}
}

/* Card */
.hisn-card{position:relative;background:#fff;border:1px solid var(--hisn-line);border-radius:var(--hisn-radius);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;box-shadow:0 1px 0 rgba(11,61,46,.04);}
.hisn-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px -18px rgba(11,61,46,.45);border-color:rgba(11,61,46,.22);}
.hisn-card-link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit;}
.hisn-card .hisn-body{display:flex;flex-direction:column;gap:9px;padding:16px 17px 17px;flex:1;}

/* Featured (lead) card */
.hisn-card--lead{height:100%;}
.hisn-card--lead .hisn-card-link{min-height:100%;}
.hisn-card--lead .hisn-thumb{aspect-ratio:16/9;}
.hisn-card--lead .hisn-headline{font-size:clamp(20px,2.3vw,28px);line-height:1.16;}
.hisn-card--lead .hisn-body{padding:20px 22px 22px;gap:11px;}

/* Thumb */
.hisn-thumb{display:block;background:linear-gradient(135deg,#0b3d2e,#13233f);aspect-ratio:16/10;overflow:hidden;}
.hisn-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
.hisn-card:hover .hisn-thumb img{transform:scale(1.05);}
.hisn-card.no-image .hisn-body{padding-top:18px;}

/* Meta + badge */
.hisn-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.hisn-badge{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:4px 9px;border-radius:999px;color:#fff;background:var(--hisn-green);line-height:1;white-space:nowrap;}
.hisn-badge-gaa{background:#0b6b3a;}
.hisn-badge-hurling{background:#1f7a4d;}
.hisn-badge-rugby{background:#13233f;}
.hisn-badge-football{background:#1d4ed8;}
.hisn-badge-loi{background:#7a1f2b;}
.hisn-badge-celtic{background:#0a7d3f;}
.hisn-badge-irish{background:var(--hisn-gold);color:#2a2310;}
.hisn-time{font-size:12px;color:var(--hisn-muted);font-weight:600;}

/* Headline + summary */
.hisn-headline{font-size:16px;line-height:1.28;font-weight:750;font-weight:700;color:var(--hisn-ink);letter-spacing:-.005em;}
.hisn-card:hover .hisn-headline{color:var(--hisn-green);}
.hisn-summary{font-size:13.5px;line-height:1.5;color:var(--hisn-muted);}

/* Foot */
.hisn-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:6px;}
.hisn-source{font-size:12px;font-weight:700;color:var(--hisn-navy);}
.hisn-readmore{font-size:12px;font-weight:800;color:var(--hisn-gold);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;}
.hisn-card:hover .hisn-readmore{color:var(--hisn-green);}

/* List style */
.hisn-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.hisn-list-item{background:#fff;border:1px solid var(--hisn-line);border-radius:14px;transition:border-color .15s ease,transform .15s ease;}
.hisn-list-item:hover{transform:translateX(3px);border-color:rgba(11,61,46,.28);}
.hisn-list-item .hisn-card-link{flex-direction:row;align-items:center;gap:12px;padding:12px 16px;flex-wrap:wrap;}
.hisn-list-item .hisn-headline{flex:1;min-width:60%;font-size:15px;}
.hisn-list-item .hisn-foot{margin:0;padding:0;}

/* CTAs */
.hisn-ctas{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:clamp(20px,2.4vw,28px);padding-top:18px;border-top:1px dashed var(--hisn-line);}
.hisn-ctas-label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--hisn-green);}
.hisn-cta{display:inline-block;text-decoration:none;font-size:13px;font-weight:700;color:var(--hisn-green);background:#fff;border:1.5px solid rgba(11,61,46,.22);padding:8px 14px;border-radius:999px;transition:all .15s ease;}
.hisn-cta:hover{background:var(--hisn-green);color:var(--hisn-cream);border-color:var(--hisn-green);transform:translateY(-1px);}

/* Disclaimer */
.hisn-disclaimer{margin:18px 0 0;font-size:11.5px;color:var(--hisn-muted);opacity:.85;}

/* Promo panel: hidden by default (mobile/tablet keep their perfect stacked
 * layout). On desktop it fills the space under the featured story so the lead
 * image is NEVER stretched — the photo keeps its natural 16:9 proportions and a
 * branded Irish District message fills the rest of the column. */
.hisn-promo{display:none;}
.hisn-product-feature{display:none;}

@media (min-width:881px){
	.hisn-style-featured_grid .hisn-lead{display:flex;flex-direction:column;gap:16px;}
	/* Card keeps natural height; image keeps proportions (no vertical stretch). */
	.hisn-style-featured_grid .hisn-card--lead{flex:0 0 auto;height:auto;}
	.hisn-style-featured_grid .hisn-card--lead .hisn-card-link{height:auto;}
	.hisn-style-featured_grid .hisn-card--lead .hisn-thumb{aspect-ratio:16/9;}

	.hisn-style-featured_grid .hisn-promo{
		display:flex;flex-direction:column;justify-content:center;gap:11px;
		flex:1 1 auto;min-height:140px;
		padding:26px 28px;border-radius:var(--hisn-radius);
		/* Faded shamrock watermark, bottom-left, over the green gradient. */
		background:
			url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 116'%3E%3Cg fill='%23f7f3e8' fill-opacity='0.06'%3E%3Cpath d='M50 56c-6-2-9-8-9-15 0-9 7-16 9-22 2 6 9 13 9 22 0 7-3 13-9 15z'/%3E%3Cpath d='M50 56c-2-6-8-9-15-9-9 0-16 7-22 9 6 2 13 9 22 9 7 0 13-3 15-9z'/%3E%3Cpath d='M50 56c2-6 8-9 15-9 9 0 16 7 22 9-6 2-13 9-22 9-7 0-13-3-15-9z'/%3E%3Cpath d='M49 58c-1 18 14 22 7 52h6c-5-28 8-34 5-52z'/%3E%3C/g%3E%3C/svg%3E")
				left -22px bottom -26px / 200px no-repeat,
			linear-gradient(155deg,var(--hisn-green) 0%,var(--hisn-green-deep) 100%);
		border:1px solid rgba(255,255,255,.06);
		color:var(--hisn-cream);position:relative;overflow:hidden;
	}
	.hisn-promo::after{content:"";position:absolute;right:-36px;bottom:-36px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(200,161,75,.22),transparent 70%);pointer-events:none;}
	.hisn-promo>*{position:relative;z-index:1;}
	.hisn-promo-icon{font-size:30px;line-height:1;color:var(--hisn-gold);}
	.hisn-promo-title{margin:0;font-size:clamp(26px,2.4vw,34px);font-weight:900;line-height:1.08;color:#fff;letter-spacing:-.02em;text-transform:uppercase;}
	.hisn-promo-text{margin:0;font-size:16px;font-weight:600;line-height:1.5;color:rgba(247,243,232,.92);max-width:46ch;}
	.hisn-promo-cta{align-self:flex-start;margin-top:5px;text-decoration:none;font-size:12.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--hisn-green-deep);background:var(--hisn-gold);padding:10px 18px;border-radius:999px;transition:transform .15s ease,background .15s ease,box-shadow .15s ease;}
	.hisn-promo-cta:hover{transform:translateY(-1px);background:#d9b65e;box-shadow:0 10px 22px -12px rgba(200,161,75,.7);}

	.hisn-product-feature{display:block;flex:1 1 auto;min-height:260px;border-radius:var(--hisn-radius);overflow:hidden;background:radial-gradient(220px 180px at 86% 82%,rgba(200,161,75,.20),transparent 72%),linear-gradient(145deg,#101010 0%,#1a1a1a 48%,#08291f 100%);border:1px solid rgba(200,161,75,.32);box-shadow:0 24px 60px -42px rgba(0,0,0,.92);}
	.hisn-product-link{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,38%);gap:20px;height:100%;min-height:260px;padding:26px;color:#f7f3e8;text-decoration:none;isolation:isolate;}
	.hisn-product-link::before{content:"";position:absolute;inset:16px;z-index:-1;border:1px solid rgba(247,243,232,.06);border-radius:14px;pointer-events:none;}
	.hisn-product-copy{display:flex;flex-direction:column;justify-content:center;gap:10px;min-width:0;}
	.hisn-product-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--hisn-gold);font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;}
	.hisn-product-eyebrow::before{content:"";width:22px;height:1px;background:var(--hisn-gold);}
	.hisn-product-title{color:#fff;font-size:clamp(25px,2.2vw,33px);font-weight:900;line-height:1.05;letter-spacing:-.015em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
	.hisn-product-category{color:rgba(247,243,232,.66);font-size:13px;font-weight:750;text-transform:uppercase;letter-spacing:.08em;}
	.hisn-product-price{color:var(--hisn-gold);font-size:17px;font-weight:900;}
	.hisn-product-price del{color:rgba(247,243,232,.45);font-size:13px;margin-right:7px;}
	.hisn-product-price ins{text-decoration:none;color:var(--hisn-gold);}
	.hisn-product-trust{color:rgba(247,243,232,.78);font-size:13px;font-weight:650;}
	.hisn-product-trust::before{content:"";display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#0e7a52;box-shadow:0 0 0 3px rgba(14,122,82,.16);vertical-align:1px;}
	.hisn-product-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:7px;margin-top:6px;padding:11px 18px;border:1px solid rgba(200,161,75,.72);border-radius:999px;color:var(--hisn-gold);font-size:12.5px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;transition:background .18s ease,color .18s ease,transform .18s ease;}
	.hisn-product-cta span{transition:transform .18s ease;}
	.hisn-product-media{align-self:center;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border-radius:16px;background:linear-gradient(145deg,#f5f4ef,#b7b2a8);overflow:hidden;box-shadow:0 18px 38px -28px rgba(0,0,0,.75);}
	.hisn-product-img{display:block;width:100%;height:100%;object-fit:contain;padding:12px;transition:transform .35s ease;}
	.hisn-product-link:hover .hisn-product-img{transform:scale(1.055);}
	.hisn-product-link:hover .hisn-product-cta{background:var(--hisn-gold);color:#101010;transform:translateY(-1px);}
	.hisn-product-link:hover .hisn-product-cta span{transform:translateX(3px);}
}

/* Tablet / mobile: stack lead, then scrollable smaller stories */
@media (max-width:880px){
	.hisn-layout{grid-template-columns:1fr;gap:18px;}
	.hisn-style-grid .hisn-grid{grid-template-columns:1fr 1fr;}
	.hisn-head{flex-direction:column;align-items:flex-start;}
	.hisn-section{padding:28px 14px 32px;}
	.hisn-card--lead{
		border-radius:20px;
		box-shadow:0 18px 40px -28px rgba(11,61,46,.45);
	}
	.hisn-card--lead .hisn-thumb{aspect-ratio:16/10;}
	.hisn-card--lead .hisn-body{padding:16px 15px 17px;gap:9px;}
	.hisn-card--lead .hisn-headline{font-size:clamp(20px,5.4vw,24px);line-height:1.14;}
	.hisn-card--lead .hisn-summary{
		font-size:13px;line-height:1.45;
		display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
	}
	.hisn-product-feature{display:none !important;}

	.hisn-grid--rest,
	.hisn-style-grid .hisn-grid{
		display:flex;
		gap:12px;
		overflow-x:auto;
		overscroll-behavior-x:contain;
		scroll-snap-type:x mandatory;
		-webkit-overflow-scrolling:touch;
		padding:4px 2px 14px;
		margin:0 -2px;
		scrollbar-width:thin;
		scrollbar-color:rgba(11,61,46,.28) transparent;
	}
	.hisn-grid--rest::-webkit-scrollbar,
	.hisn-style-grid .hisn-grid::-webkit-scrollbar{height:5px;}
	.hisn-grid--rest::-webkit-scrollbar-thumb,
	.hisn-style-grid .hisn-grid::-webkit-scrollbar-thumb{
		background:rgba(11,61,46,.28);border-radius:999px;
	}
	.hisn-grid--rest>.hisn-card,
	.hisn-style-grid .hisn-grid>.hisn-card{
		flex:0 0 min(72vw,260px);
		width:min(72vw,260px);
		scroll-snap-align:start;
		border-radius:16px;
	}
	.hisn-grid--rest .hisn-thumb,
	.hisn-style-grid .hisn-grid .hisn-thumb{aspect-ratio:16/11;}
	.hisn-grid--rest .hisn-card .hisn-body,
	.hisn-style-grid .hisn-grid .hisn-card .hisn-body{padding:11px 12px 13px;gap:7px;}
	.hisn-grid--rest .hisn-headline,
	.hisn-style-grid .hisn-grid .hisn-headline{
		font-size:14px;line-height:1.22;
		display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
	}
	.hisn-grid--rest .hisn-summary,
	.hisn-style-grid .hisn-grid .hisn-summary{display:none;}
	.hisn-grid--rest .hisn-foot,
	.hisn-style-grid .hisn-grid .hisn-foot{padding-top:0;}
	.hisn-grid--rest .hisn-source,
	.hisn-style-grid .hisn-grid .hisn-source{font-size:11px;}
	.hisn-grid--rest .hisn-readmore,
	.hisn-style-grid .hisn-grid .hisn-readmore{font-size:10.5px;}
	.hisn-ctas{gap:8px;}
	.hisn-cta{padding:7px 12px;font-size:12px;}
	.hisn-list-item .hisn-card-link{flex-direction:column;align-items:flex-start;}
	.hisn-list-item .hisn-headline{min-width:100%;}
}

@media (prefers-reduced-motion:reduce){
	.hisn-card,.hisn-thumb img,.hisn-cta,.hisn-list-item,.hisn-product-img,.hisn-product-cta,.hisn-product-cta span{transition:none;}
	.hisn-card:hover,.hisn-product-link:hover .hisn-product-cta{transform:none;}
}
