/* page-owned-authority-media.css — page bundle b681ba4faefa88ea (45/88 rules, manifest 6d9ba0638c2dedef) */
.jt-owned-authority-media,
.jt-owned-authority-media *,
.jt-owned-authority-media *::before,
.jt-owned-authority-media *::after{
	box-sizing:border-box;
}
.jt-owned-authority-media{
	--jt-owned-paper:#f7f1eb;
	--jt-owned-surface:#fffdf9;
	--jt-owned-ink:#222126;
	--jt-owned-muted:#69635d;
	--jt-owned-line:#cbbfb5;
	--jt-owned-accent:#075e54;
	clear:both;
	grid-column:1 / -1;
	width:calc(100% - 48px);
	max-width:1180px;
	margin:68px auto 78px;
	display:grid;
	grid-template-columns:minmax(340px,3.6fr) minmax(0,6.4fr);
	border:1px solid var(--jt-owned-line);
	background:var(--jt-owned-paper);
	color:var(--jt-owned-ink);
	font-family:Roobert,"Helvetica Neue",Arial,sans-serif;
	letter-spacing:0;
}
.jt-owned-authority-media__copy{
	min-height:360px;
	padding:38px 36px 34px;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	border-right:1px solid var(--jt-owned-line);
	background:linear-gradient(180deg,var(--jt-owned-surface),var(--jt-owned-paper));
}
.jt-owned-authority-media__kicker{
	display:block;
	margin:0 0 20px;
	color:var(--jt-owned-accent);
	font-size:12px;
	font-weight:700;
	line-height:1.2;
	text-transform:uppercase;
}
.jt-owned-authority-media h2{
	max-width:470px;
	margin:0;
	color:var(--jt-owned-ink);
	font-size:clamp(23px,1.8vw,28px);
	font-weight:700;
	line-height:1.12;
	overflow-wrap:break-word;
}
.jt-owned-authority-media p{
	max-width:430px;
	margin:26px 0 0;
	color:var(--jt-owned-muted);
	font-size:16px;
	font-weight:300;
	line-height:1.62;
	overflow-wrap:break-word;
}
.jt-owned-authority-media__grid{
	display:grid;
	height:clamp(430px,40vw,620px);
	max-height:min(620px,72vh);
	min-height:430px;
	gap:1px;
	background:var(--jt-owned-line);
}
.jt-owned-authority-media--count-3 .jt-owned-authority-media__grid{
	grid-template-columns:1.18fr .82fr;
	grid-template-rows:repeat(2,minmax(190px,1fr));
}
.jt-owned-authority-media__figure{
	position:relative;
	min-width:0;
	min-height:0;
	margin:0;
	overflow:hidden;
	background:var(--jt-owned-ink);
}
.jt-owned-authority-media__grid > figure{
	position:relative;
	min-width:0;
	min-height:0;
	margin:0;
	overflow:hidden;
	background:var(--jt-owned-ink);
}
.jt-owned-authority-media--count-3 .jt-owned-authority-media__figure--lead{
	grid-row:1 / span 2;
}
.jt-owned-authority-media__grid:has(> figure:nth-child(3):last-child){
	grid-template-columns:1.18fr .82fr;
	grid-template-rows:repeat(2,minmax(190px,1fr));
}
.jt-owned-authority-media__grid:has(> figure:nth-child(3):last-child) > figure:first-child{
	grid-row:1 / span 2;
}
.jt-owned-authority-media__grid:has(> figure:nth-child(4):last-child){
	grid-template-columns:repeat(4,minmax(0,1fr));
	grid-template-rows:repeat(2,minmax(190px,1fr));
}
.jt-owned-authority-media__grid:has(> figure:nth-child(4):last-child) > figure:first-child{
	grid-column:span 2;
	grid-row:1 / span 2;
}
.jt-owned-authority-media__grid:has(> figure:nth-child(4):last-child) > figure:last-child{
	grid-column:span 2;
}
.jt-owned-authority-media__grid:has(> figure:nth-child(5):last-child){
	grid-template-columns:minmax(0,1.28fr) repeat(2,minmax(0,.86fr));
	grid-template-rows:repeat(2,minmax(0,1fr));
}
.jt-owned-authority-media__grid:has(> figure:nth-child(5):last-child) > figure:first-child{
	grid-row:1 / span 2;
}
.jt-owned-authority-media__figure img{
	display:block;
	width:100%;
	height:100%;
	min-height:220px;
	object-fit:cover;
	filter:saturate(.96) contrast(1.02);
}
.jt-owned-authority-media__grid > figure > img{
	display:block;
	width:100%;
	height:100%;
	min-height:220px;
	object-fit:cover;
	filter:saturate(.96) contrast(1.02);
}
.jt-owned-authority-media__grid > figure:nth-child(4) > img{
	object-position:center center;
}
.jt-owned-authority-media figcaption{
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	margin:0;
	padding:11px 13px 12px;
	background:rgba(34,33,38,.78);
	color:#fffdf9;
	font-size:12px;
	font-weight:700;
	line-height:1.25;
	text-transform:uppercase;
}
.jt-owned-authority-media__figure--lead figcaption{
	background:rgba(7,94,84,.82);
}
/* 2026-09-21 grid fix F1: 1040 was a third card width (x=120 when the module sits inside section.section, where article-base's
   direct-child card-rail rule does not reach) → card rail (1180 → x=50). @media (max-width:1040px) below still governs narrow widths. */
/* 2026-09-21 grid fix F1: the copy was capped at 620px from the box edge (x=87); kicker/h2/p now take the text rail centred inside the
   copy column (interior 1106 → 704 at x=288). __copy is a flex column, so the auto inline margins centre each item. */
@media (max-width: 1040px){
.jt-owned-authority-media{
		width:calc(100% - 32px);
		grid-template-columns:1fr;
		margin:54px auto 66px;
	}
.jt-owned-authority-media__copy{
		min-height:0;
		padding:32px 28px 30px;
		border-right:0;
		border-bottom:1px solid var(--jt-owned-line);
	}
.jt-owned-authority-media h2,
	.jt-owned-authority-media p{
		max-width:720px;
	}
.jt-owned-authority-media p{
		margin-top:20px;
	}
.jt-owned-authority-media__grid{
		height:auto;
		max-height:none;
		min-height:0;
	}
.jt-owned-authority-media__figure img{
		aspect-ratio:3 / 2;
		height:auto;
	}
.jt-owned-authority-media__grid > figure > img{
		aspect-ratio:3 / 2;
		height:auto;
	}
.jt-owned-authority-media figcaption{
		overflow-wrap:anywhere;
		hyphens:auto;
	}
}
@media (max-width: 720px){
.jt-owned-authority-media{
		width:min(100%,100vw);
		max-width:100vw;
		margin:42px 0 56px;
		border-left:0;
		border-right:0;
		overflow:hidden;
	}
.jt-owned-authority-media__copy{
		padding:28px 22px 26px;
	}
.jt-owned-authority-media h2{
		font-size:25px;
		line-height:1.08;
	}
.jt-owned-authority-media p{
		font-size:15px;
		line-height:1.6;
	}
.jt-owned-authority-media--count-2 .jt-owned-authority-media__grid,
	.jt-owned-authority-media--count-3 .jt-owned-authority-media__grid,
	.jt-owned-authority-media--count-4 .jt-owned-authority-media__grid,
	.jt-owned-authority-media--post.jt-owned-authority-media--count-3 .jt-owned-authority-media__grid,
	.jt-owned-authority-media--post.jt-owned-authority-media--count-4 .jt-owned-authority-media__grid,
	.jt-owned-authority-media__grid:has(> figure:nth-child(3):last-child),
	.jt-owned-authority-media__grid:has(> figure:nth-child(4):last-child),
	.jt-owned-authority-media__grid:has(> figure:nth-child(5):last-child),
	.jt-owned-authority-media--post .jt-owned-authority-media__grid:has(> figure:nth-child(3):last-child),
	.jt-owned-authority-media--post .jt-owned-authority-media__grid:has(> figure:nth-child(5):last-child){
		grid-template-columns:1fr;
		grid-template-rows:auto;
	}
.jt-owned-authority-media--count-3 .jt-owned-authority-media__figure--lead,
	.jt-owned-authority-media--count-4 .jt-owned-authority-media__figure--lead,
	.jt-owned-authority-media__grid:has(> figure:nth-child(3):last-child) > figure:first-child,
	.jt-owned-authority-media__grid:has(> figure:nth-child(4):last-child) > figure:first-child,
	.jt-owned-authority-media__grid:has(> figure:nth-child(5):last-child) > figure:first-child{
		grid-column:auto;
		grid-row:auto;
	}
.jt-owned-authority-media--count-4 .jt-owned-authority-media__figure:not(.jt-owned-authority-media__figure--lead):last-child,
	.jt-owned-authority-media__grid:has(> figure:nth-child(4):last-child) > figure:last-child{
		grid-column:auto;
	}
}
/* 2026-06-04 live-404 publish QA: keep exact flagged page headings from stacking vertically. */
/* ───────────────────────────────────────────────────────────────────────────
   /sobre/ (page 4721) — promote the clinic / technology imagery (20260628 swiss-audit)
   The 4 real architecture/tech shots (procedimento, estrutura, ambiente, laser)
   rendered as small thumbs in a 4-col strip. Make them an even 2x2 so the
   structure + laser planning shots actually read. Scoped to the about instance.
   ─────────────────────────────────────────────────────────────────────────── */
/* The base count-4 layout uses :has()-based selectors that out-specify a plain
   page-scoped rule, so we match the same :has() pattern under the page scope and
   use !important (base file uses none) to force an even 2x2 here only. */
/* 2026-09-05 ship-readiness: on phones the copy card's 28–36px padding stacks on
   the article rail, leaving a 244px measure (text starts 73px in on 390px; 31
   posts). Tighten the card padding only below 600px. */
@media (max-width:600px){
.jt-owned-authority-media__copy{
		padding:24px 18px 22px!important;
	}
}
