/* About Swami Nirmalananda Giri — approved Sites prototype reconciliation. */
.losp-swami-page,
.losp-swami-page * { box-sizing:border-box; }
.losp-swami-page { background:var(--losp-paper); color:var(--losp-ink); }
.losp-swami-page p { margin:0; }
.losp-swami-page img { display:block; max-width:100%; }
.losp-swami-page h1,
.losp-swami-page h2 { color:var(--losp-blue-950); font-family:var(--losp-font-heading); font-weight:500; letter-spacing:-.035em; line-height:1.02; margin:0; }
.losp-swami-page h1 em,
.losp-swami-page h2 em { color:var(--losp-gold); font-weight:400; }

.losp-swami-eyebrow { color:var(--losp-gold); font:600 13px/1.4 var(--losp-font-interface)!important; letter-spacing:.22em; text-transform:uppercase; }


/* Crop refinement: reveal the full subjects using the existing source photographs. */
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__portrait img{object-position:48% 0%}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure > img{object-position:50% 0%}


.losp-swami-page .losp-swami-hero { align-items:stretch; background:var(--losp-cream); display:grid; gap:0; grid-template-columns:minmax(500px,.92fr) minmax(470px,1.08fr); min-height:650px; overflow:hidden; padding:0; width:100%; }
.losp-swami-hero__copy { align-self:center; padding:72px clamp(44px,6vw,110px) 78px max(32px,calc((100vw - 1280px)/2)); position:relative; z-index:2; }
.losp-swami-hero__copy::before { border:1px solid rgba(185,149,75,.18); border-radius:50%; content:""; height:520px; left:-255px; position:absolute; top:-280px; width:520px; }
.losp-swami-page .losp-swami-hero h1 { color:var(--losp-blue-950); font-size:clamp(60px,6vw,98px); margin:24px 0 30px; max-width:790px; }
.losp-swami-page .losp-swami-hero__lede { color:#50534d; font:400 clamp(20px,1.8vw,26px)/1.48 var(--losp-font-heading)!important; max-width:660px; }
.losp-swami-text-link { border-bottom:1px solid rgba(118,43,46,.45); color:var(--losp-red); display:inline-flex; font:600 11px/1.4 var(--losp-font-interface); gap:12px; letter-spacing:.12em; margin-top:36px; padding-bottom:5px; text-decoration:none; text-transform:uppercase; }
.losp-swami-text-link:hover { color:var(--losp-red-dark); }
.losp-swami-hero__portrait { align-self:stretch; margin:0; min-height:650px; overflow:hidden; position:relative; }
.losp-swami-hero__portrait::after { background:linear-gradient(90deg,rgba(247,241,230,.42),transparent 18%); content:""; inset:0; pointer-events:none; position:absolute; }
.losp-swami-page .losp-swami-hero__portrait img { height:100%; object-fit:cover; object-position:48% center; width:100%; }

.losp-swami-section { padding:78px clamp(24px,6vw,96px); }
.losp-swami-section-label { align-items:center; display:flex; gap:15px; margin:0 auto 44px; max-width:1280px; }
.losp-swami-section-label span { color:var(--losp-gold); font:italic 500 15px/1 var(--losp-font-heading); }
.losp-swami-section-label::after { background:var(--losp-hairline); content:""; height:1px; width:48px; }
.losp-swami-section-label p { color:var(--losp-muted); font:600 12px/1.4 var(--losp-font-interface); letter-spacing:.2em; text-transform:uppercase; }
.losp-swami-life { background:var(--losp-paper); }
.losp-swami-story-grid { display:grid; gap:clamp(56px,8vw,126px); grid-template-columns:.86fr 1.14fr; margin:auto; max-width:1160px; }
.losp-swami-story-heading { align-self:start; }
.losp-swami-page .losp-swami-drop-lede { color:var(--losp-blue-950); font:400 clamp(27px,3vw,42px)/1.38 var(--losp-font-heading)!important; }
.losp-swami-drop-lede::first-letter { color:var(--losp-gold); float:left; font-size:4.3em; line-height:.68; margin:.12em .12em 0 0; }
.losp-swami-page .losp-swami-story-note { border:0; border-left:1px solid var(--losp-gold); color:var(--losp-muted); font:italic 400 18px/1.5 var(--losp-font-heading)!important; margin:30px 0 0 8px; padding:0 0 0 22px; }
.losp-swami-page .losp-swami-story-copy { color:#595c56; font:400 17px/1.72 var(--losp-font-interface); }
.losp-swami-page .losp-swami-story-copy p { font-family:var(--losp-font-interface)!important; }
.losp-swami-story-copy p + p { border-top:1px solid var(--losp-hairline); margin-top:26px; padding-top:26px; }

.losp-swami-page .losp-swami-india { background:var(--losp-cream-deep); display:block; padding:0; }
.losp-swami-india figure { margin:0; overflow:hidden; position:relative; width:100%; }
.losp-swami-india figure::after { background:linear-gradient(90deg,rgba(247,241,230,.99) 0%,rgba(247,241,230,.95) 32%,rgba(247,241,230,.3) 57%,transparent 70%); content:""; inset:0; pointer-events:none; position:absolute; }
.losp-swami-page .losp-swami-india figure > img { height:auto; min-height:560px; object-fit:cover; object-position:center; width:100%; }
.losp-swami-india__copy { left:max(32px,calc((100vw - 1280px)/2)); max-width:min(43vw,570px); position:absolute; top:50%; transform:translateY(-50%); z-index:2; }
.losp-swami-india__copy h2 { color:var(--losp-blue-950); font-size:clamp(42px,4.5vw,68px); margin:18px 0 24px; }
.losp-swami-page .losp-swami-india__copy p:not(.losp-swami-eyebrow) { color:#4d514c; font:400 16px/1.65 var(--losp-font-interface)!important; margin-bottom:15px; }
.losp-swami-india figcaption { bottom:18px; color:rgba(7,31,58,.62); font:italic 400 14px/1.5 var(--losp-font-heading); margin:0; position:absolute; right:max(24px,calc((100vw - 1280px)/2)); z-index:2; }

.losp-swami-sharing { background:var(--losp-paper); display:block; }
.losp-swami-sharing-grid { display:grid; gap:clamp(60px,9vw,150px); grid-template-columns:1fr 1fr; margin:auto; max-width:1180px; }
.losp-swami-sharing-grid h2 { color:var(--losp-blue-950); font-size:clamp(48px,5vw,72px); margin-top:20px; }
.losp-swami-page .losp-swami-sharing-grid > p { color:#565a55; font:400 17px/1.72 var(--losp-font-interface)!important; padding-top:4px; }
.losp-swami-page .losp-swami-channels { border-bottom:1px solid var(--losp-hairline); border-top:1px solid var(--losp-hairline); display:grid; grid-template-columns:repeat(3,1fr); margin:52px auto 0; max-width:1180px; padding:0; width:100%; }
.losp-swami-page .losp-swami-channels span { align-items:center; border:0; border-right:1px solid var(--losp-hairline); color:var(--losp-blue-950); display:flex; font:500 21px/1.2 var(--losp-font-heading); gap:18px; min-height:96px; padding:18px 28px; }
.losp-swami-page .losp-swami-channels span:nth-child(3n) { border-right:0; }
.losp-swami-page .losp-swami-channels span:nth-child(-n+3) { border-bottom:1px solid var(--losp-hairline); }
.losp-swami-page .losp-swami-channels b { color:var(--losp-gold); font:italic 500 11px/1 var(--losp-font-heading); }

.losp-swami-page .losp-swami-closing { background:var(--losp-blue-900); display:flex; gap:12px; justify-content:center; padding:38px 24px; text-align:center; }
.losp-swami-page .losp-swami-closing .losp-button { border-radius:0; font-size:10px; font-weight:600; letter-spacing:.14em; min-height:54px; padding:0 28px; text-transform:uppercase; }
.losp-swami-page .losp-swami-closing .losp-button span { margin-left:10px; }
.losp-swami-page .losp-swami-closing .losp-button--gold { background:var(--losp-gold); color:#fff; }
.losp-swami-page .losp-swami-closing .losp-button--outline-light { background:transparent; border:1px solid rgba(255,255,255,.34); color:#fff; }
.losp-swami-page .losp-swami-closing .losp-button--outline-light:hover { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.62); color:#fff; }

@media (max-width:1080px) {
	.losp-swami-page .losp-swami-hero { grid-template-columns:minmax(430px,.95fr) minmax(390px,1.05fr); }
}

@media (max-width:940px) {
	.losp-swami-page .losp-swami-hero { grid-template-columns:1fr 1fr; min-height:600px; }
	.losp-swami-hero__portrait { min-height:600px; }
	.losp-swami-hero__copy { padding-left:34px; padding-right:34px; }
	.losp-swami-page .losp-swami-hero h1 { font-size:clamp(52px,7vw,72px); }
}

@media (max-width:720px) {
	.losp-swami-page .losp-swami-hero { grid-template-columns:1fr; }
	.losp-swami-hero__copy { order:2; padding:58px 24px 72px; }
	.losp-swami-hero__portrait { min-height:0; order:1; }
	.losp-swami-hero__portrait::after { display:none; }
	.losp-swami-page .losp-swami-hero__portrait img { height:auto; object-fit:contain; width:100%; }
	.losp-swami-page .losp-swami-hero h1 { font-size:clamp(52px,14vw,70px); }
	.losp-swami-section { padding:62px 24px; }
	.losp-swami-section-label { align-items:flex-start; margin-bottom:36px; }
	.losp-swami-story-grid,
	.losp-swami-sharing-grid { gap:38px; grid-template-columns:1fr; }
	.losp-swami-india figure { display:flex; flex-direction:column; }
	.losp-swami-india figure::after { display:none; }
	.losp-swami-page .losp-swami-india figure > img { min-height:0; order:2; }
	.losp-swami-india__copy { background:var(--losp-cream); left:auto; max-width:none; order:1; padding:54px 24px 42px; position:relative; top:auto; transform:none; }
	.losp-swami-india__copy h2 { font-size:clamp(44px,12vw,60px); }
	.losp-swami-india figcaption { background:var(--losp-cream); bottom:auto; order:3; padding:14px 24px 26px; position:relative; right:auto; }
	.losp-swami-page .losp-swami-channels { grid-template-columns:1fr; }
	.losp-swami-page .losp-swami-channels span { border-bottom:1px solid var(--losp-hairline); border-right:0; }
	.losp-swami-page .losp-swami-channels span:last-child { border-bottom:0; }
	.losp-swami-page .losp-swami-closing { align-items:stretch; flex-direction:column; }
}

@media (prefers-reduced-motion:reduce) {
	.losp-swami-page * { transition:none!important; }
}

/* About Swami — reading typography and restrained section markers. */
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-story-copy {
	font-size:18.5px;
	line-height:1.72;
}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india__copy p:not(.losp-swami-eyebrow),
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-sharing-grid > p {
	font-size:18.5px!important;
	line-height:1.72!important;
}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-story-copy p + p {
	margin-top:30px;
	padding-top:30px;
}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-india__copy p:not(.losp-swami-eyebrow) {
	margin-bottom:18px!important;
}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-section-label > span {
	display:none;
}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-section-label::before {
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 20'%3E%3Cg fill='none' stroke='%23b9954b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 17C8 14 6 9 7 5c4 1 6 4 7 8 1-4 3-7 7-8 1 4-1 9-7 12Z'/%3E%3Cpath d='M14 17c-3-4-3-9 0-14 3 5 3 10 0 14Z'/%3E%3Cpath d='M5 17c3 1 6 1 9 0 3 1 6 1 9 0'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
	content:"";
	flex:0 0 24px;
	height:18px;
	width:24px;
}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-channels b {
	display:none;
}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-channels span {
	gap:12px;
}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-channels span::before {
	background:var(--losp-gold);
	border-radius:50%;
	box-shadow:0 0 0 3px rgba(185,149,75,.1);
	content:"";
	flex:0 0 5px;
	height:5px;
	width:5px;
}
@media (max-width:720px) {
	:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-story-copy,
	:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india__copy p:not(.losp-swami-eyebrow),
	:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-sharing-grid > p {
		font-size:17px!important;
		line-height:1.7!important;
	}
	:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-story-copy p + p {
		margin-top:26px;
		padding-top:26px;
	}
}


/* Swami page hero and Guided section proportion correction. */
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero{height:clamp(600px,36vw,680px);min-height:0}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__copy{padding-block:48px}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero h1{font-size:clamp(54px,3.45vw,62px);line-height:1.02;margin:20px 0 24px}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__portrait{min-height:0}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__portrait img{height:100%;object-fit:cover;object-position:48% 38%}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure > img{height:100%;min-height:0;object-fit:contain;object-position:right center;width:min(66%,970px);margin-left:auto}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india__copy h2{font-size:clamp(42px,3.1vw,56px);margin:14px 0 18px}
@media(max-width:940px) and (min-width:901px){
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__copy{padding:40px 32px}
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero h1{font-size:clamp(48px,5.2vw,54px);margin:16px 0 20px}
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__lede{font-size:20px}
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-text-link{margin-top:24px}
}
@media(max-width:900px){
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero{height:auto;grid-template-columns:1fr}
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__copy{order:2;padding:42px 32px 52px}
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__portrait{min-height:0;order:1}
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__portrait img{height:auto;object-fit:contain}
}
@media(max-width:720px){
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__copy{padding:38px 24px 48px}
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero h1{font-size:clamp(46px,12vw,58px);margin:18px 0 22px}
 :is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure > img{height:auto;min-height:0;object-fit:contain}
}

/* Fine-scale alignment: preserve a consistent headline relationship across desktop and tablet. */
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero h1{font-size:clamp(58px,3.45vw,62px)}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india__copy h2{font-size:clamp(53px,3.1vw,56px)}
@media(max-width:940px) and (min-width:901px){:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero h1{font-size:clamp(56px,5.2vw,58px)}}
@media(max-width:900px) and (min-width:721px){:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero h1{font-size:clamp(56px,7vw,58px)}}
@media(max-width:720px){:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-india__copy h2{font-size:clamp(42px,10.8vw,46px)}}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure{height:clamp(560px,34vw,620px)}
@media(max-width:720px){:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure{height:auto}:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure > img{height:auto;width:100%;max-width:100%;margin:0;object-fit:contain;object-position:center}}
/* Keep the entire authentic 970:600 historical photo inside the approved figure height. */
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure{display:grid;align-items:center;justify-items:end}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure > img{display:block;aspect-ratio:970/600!important;height:auto!important;min-height:0!important;max-height:100%!important;width:min(100%,970px)!important;max-width:100%!important;object-fit:contain!important;object-position:right center!important;margin-left:auto}
@media(max-width:720px){:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure{display:flex;height:auto}:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure > img{aspect-ratio:auto!important;height:auto!important;max-height:none!important;width:100%!important;max-width:100%!important;margin:0;object-fit:contain!important;object-position:center!important}}
/* Refine authentic portrait framing without increasing the approved section height. */
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__portrait img{object-position:48% 10%!important;}
:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure > img{transform:none!important}
@media(max-width:720px){:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-hero__portrait img{object-position:center top!important}:is(.losp-shadow-about-swami,.losp-route-about-swami) .losp-swami-page .losp-swami-india figure > img{transform:none!important}}