/* Reference-inspired composition, scoped to this one section. Logos are never cropped or masked. */
#projects.connection-section{--connect-gold:#c99a49;--connect-maroon:#760c27;position:relative;isolation:isolate;padding:30px 0 34px;color:#44291e;scroll-margin-top:24px;background:linear-gradient(90deg,#39230d55,#fff2ccdb 22%,#fff3d2e8 58%,#38240f44),url('/tithra-site/assets/images/reference-temple-hero.webp') center 42%/cover no-repeat;border-block:1px solid #c19a52}
#projects.connection-section::before{content:'';position:absolute;inset:10px;border:1px solid #d4b06999;border-radius:12px;z-index:-1;pointer-events:none}
#projects .connect-heading{display:flex;align-items:center;justify-content:center;gap:24px;text-align:center;margin:0 0 24px}
#projects .connect-kicker{display:block;color:#ffe8a6;background:#730d21;border:1px solid #c79c4f;border-radius:24px;padding:7px 20px;box-shadow:0 3px 10px #53271324;white-space:nowrap;font-size:14px;font-weight:600}
#projects .connect-heading h2{font-size:clamp(30px,2.8vw,43px);line-height:1.3;color:#7b1020;text-shadow:0 1px #fff8db;font-weight:400}
#projects .connect-heading p{font-size:14px;line-height:1.7;color:#6e4726}
#projects .connect-heading-ornament{display:flex;align-items:center;justify-content:center;color:#a9782e;font:18px/1 Georgia,serif;margin:3px auto 5px;max-width:350px;gap:10px}
#projects .connect-heading-ornament::before,#projects .connect-heading-ornament::after{content:'';height:1px;flex:1;background:#bc903f99}
#projects .connect-shell{position:relative;display:grid;grid-template-columns:250px minmax(0,1fr) 205px;gap:16px;min-width:0}
#projects .connect-panel{position:relative;min-width:0;border:1px solid #b88736;border-radius:14px;box-shadow:0 8px 20px #53311024,inset 0 0 0 4px #d4b57833;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
#projects .connect-panel::before{content:'';position:absolute;inset:5px;border:1px solid #cfa95e80;border-radius:10px;pointer-events:none}
#projects .connect-panel::after{content:'✧';position:absolute;right:10px;top:6px;font:18px/1 Georgia,serif;color:#ba8736;pointer-events:none}
#projects .connect-app{padding:25px 17px 20px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:23px;background:radial-gradient(ellipse at 30% 22%,#971e28,#4b0819 85%);color:#fff1ca}
#projects .connect-app-showcase{display:flex;align-items:center;gap:15px;width:100%;position:relative}
#projects .connect-device{flex:none;width:89px;padding:4px;border:2px solid #c4a56d;border-radius:15px;background:#1c1814;box-shadow:4px 10px 16px #14000966;transform:rotate(-7deg)}
#projects .connect-device img{display:block;width:100%;height:auto;aspect-ratio:360/780;border-radius:9px;object-fit:contain}
#projects .connect-app-identity{min-width:0;flex:1;text-align:center}
#projects .connect-app-art{display:grid;place-items:center;width:90px;height:90px;max-width:100%;margin:0 auto 12px}
#projects .connect-app-art img{width:100%;height:100%;object-fit:contain;transition:transform .25s ease}
#projects .connect-app h3{font:600 21px/1.35 Georgia,'Noto Sans Telugu',serif;color:#ffe6a2;margin:0 0 8px;white-space:nowrap}
#projects .connect-app p{font-size:13px;line-height:1.9;color:#fff0d1}
#projects .connect-play{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;padding:9px 10px;border:1px solid #f5d68a;border-radius:28px;min-height:52px;background:#f6d580;color:#462313;box-shadow:0 3px 9px #20030735,inset 0 0 0 3px #fff0b844;transition:box-shadow .25s ease,transform .25s ease}
#projects .connect-play>svg{flex:none}
#projects .connect-play>span:not(.connect-play-arrow){display:flex;flex-direction:column;align-items:flex-start}
#projects .connect-play strong{font:600 17px/1.2 Georgia,serif;white-space:nowrap}
#projects .connect-play small{font-size:10px;line-height:1.6}
#projects .connect-play-arrow{display:grid;place-items:center;width:25px;height:25px;flex:none;color:#ffe6a2;background:#760d23;border:1px solid #b58233;border-radius:50%;font-size:16px;transition:transform .25s ease}
#projects .connect-channels{padding:18px 16px 16px;background:#fff7db;box-shadow:0 8px 20px #53311024,inset 0 0 0 4px #ffe9a947}
#projects .connect-panel-heading{display:flex;align-items:center;gap:10px;margin-bottom:18px;min-width:0}
#projects .connect-youtube-seal{flex:none;display:grid;place-items:center;width:40px;height:40px;border:1px solid #c8983e;border-radius:50%;background:#b90822;box-shadow:0 2px 6px #bc713b30,inset 0 0 0 2px #f79f452a}
#projects .connect-panel-heading h3{font:600 23px/1.3 Georgia,'Noto Sans Telugu',serif;color:#611120;margin:0}
#projects .connect-panel-heading p{font-size:10px;line-height:1.8;color:#806342;margin-top:3px}
#projects .connect-all-videos{margin-left:auto;flex:none;display:flex;align-items:center;gap:6px;min-height:37px;border:1px solid #bf9146;border-radius:20px;background:#760d23;color:#fff0c4;padding:8px 11px;font-size:10px;font-weight:600;box-shadow:0 2px 5px #713d1420;transition:box-shadow .25s ease}
#projects .connect-all-videos span{display:inline-block;transition:transform .25s ease}
#projects .connect-channel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#projects .connect-channel-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:11px;min-width:0;padding:17px 9px 12px;border:1px solid #cba35e;border-radius:10px;background:#fff9e9;color:#671526;box-shadow:0 3px 8px #8b652a14,inset 0 0 0 3px #edd49e20;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
#projects .connect-channel-card::before,#projects .connect-channel-card::after{content:'';position:absolute;width:13px;height:13px;border-style:solid;border-color:#cda866;pointer-events:none}
#projects .connect-channel-card::before{top:4px;left:4px;border-width:1px 0 0 1px;border-top-left-radius:5px}
#projects .connect-channel-card::after{bottom:4px;right:4px;border-width:0 1px 1px 0;border-bottom-right-radius:5px}
#projects .connect-channel-art{width:110px;height:110px;max-width:100%;display:grid;place-items:center}
#projects .connect-channel-art img{width:100%;height:100%;object-fit:contain;object-position:center;transition:transform .25s ease}
#projects .connect-channel-info{display:flex;flex:1;flex-direction:column;align-items:center;gap:6px;min-width:0;width:100%}
#projects .connect-youtube-label{display:flex;align-items:center;gap:4px;font:500 9px/1.2 'Sora',sans-serif;color:#a3463b;letter-spacing:.02em}
#projects .connect-channel-info strong{font:600 16px/1.3 Georgia,serif;overflow-wrap:anywhere;max-width:100%;min-height:42px;display:flex;align-items:center;justify-content:center}
#projects .connect-channel-description{font-size:10px;line-height:1.65;color:#806346}
#projects .connect-channel-cta{display:flex;align-items:center;justify-content:center;gap:4px;font-size:10px;font-weight:600;border:1px solid #e2bc72;border-radius:20px;width:100%;padding:7px 4px;margin-top:auto;background:#fff2cf;color:#6c1729;min-height:34px}
#projects .connect-channel-cta>span,#projects .connect-tools-cta>span{display:inline-block;transition:transform .25s ease}
#projects .connect-tools{padding:25px 17px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;text-align:center;background:#102c35;color:#ffe6a2}
#projects .connect-tools-icon{display:grid;place-items:center;border:1px solid #bf9750;border-radius:50%;width:72px;height:72px;background:#192e34;color:#e9be63;box-shadow:0 0 0 5px #c79e3c12,inset 0 0 0 5px #d3ac5433}
#projects .connect-tools-icon svg{width:33px;height:33px}
#projects .connect-tools h3{font:600 26px/1.3 Georgia,serif;color:#ffe6a2;margin:0}
#projects .connect-tools p{font-size:13px;line-height:1.9;color:#fff1d8}
#projects .connect-tools-cta{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 8px;border:1px solid #efcc7d;border-radius:24px;min-height:47px;font-size:12px;font-weight:600;color:#3c2415;width:100%;margin-top:5px;background:#f6d580;box-shadow:inset 0 0 0 3px #fff0b844;transition:box-shadow .25s ease}
#projects a:focus-visible{outline:3px solid #b24b28;outline-offset:4px}
#projects .connect-app a:focus-visible,#projects .connect-tools a:focus-visible{outline-color:#fff4bd}
#projects .connect-channel-card.is-unconfigured{opacity:.7}
#projects .connect-channel-card:active{border-color:#946f33}
@media(hover:hover) and (pointer:fine){
 #projects .connect-channel-card:hover,#projects .connect-app:hover,#projects .connect-tools:hover{transform:translateY(-3px);border-color:#a97626;box-shadow:0 10px 24px #9a711c33}
 #projects .connect-channel-card:hover img,#projects .connect-app:hover .connect-app-art img{transform:scale(1.025)}
 #projects .connect-channel-card:hover .connect-channel-cta>span{transform:translate(2px,-2px)}
 #projects .connect-tools-cta:hover>span,#projects .connect-all-videos:hover span{transform:translateX(3px)}
 #projects .connect-play:hover{box-shadow:0 0 0 3px #cba96535;transform:translateY(-1px)}
}
#projects.connect-motion-ready .connect-shell{opacity:.35;transform:translateY(12px);transition:opacity .6s ease,transform .6s ease}
#projects.connect-motion-ready.connect-visible .connect-shell{opacity:1;transform:none}
@media(max-width:1200px){
 #projects .connect-shell{grid-template-columns:205px minmax(0,1fr) 170px;gap:12px}
 #projects .connect-heading h2{font-size:34px}
 #projects .connect-channel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 #projects .connect-channel-card{flex-direction:row;text-align:left;align-items:center;padding:12px;gap:10px}
 #projects .connect-channel-art{flex:none;width:72px;height:72px}
 #projects .connect-channel-info{align-items:flex-start;gap:4px}
 #projects .connect-channel-info strong{display:block;min-height:0;font-size:15px;line-height:1.3}
 #projects .connect-channel-description{display:none}
 #projects .connect-channel-cta{font-size:10px;justify-content:center;padding:5px;min-height:30px}
 #projects .connect-channels{padding:16px 12px 12px}
 #projects .connect-panel-heading{margin-bottom:14px}
 #projects .connect-panel-heading h3{font-size:20px}
 #projects .connect-all-videos{display:none}
 #projects .connect-app{padding:20px 13px;gap:20px}
 #projects .connect-device{width:68px;border-radius:13px}
 #projects .connect-app-showcase{gap:10px}
 #projects .connect-app-art{width:75px;height:75px}
 #projects .connect-app h3{font-size:17px}
 #projects .connect-play{padding:8px 7px;gap:6px}
 #projects .connect-play strong{font-size:15px}
 #projects .connect-play-arrow{width:20px;height:20px;font-size:13px}
 #projects .connect-tools{padding:20px 12px}
 #projects .connect-tools h3{font-size:23px}
 #projects .connect-tools p{font-size:12px}
 #projects .connect-tools-cta{font-size:11px;gap:5px}
}
@media(min-width:601px) and (max-width:900px){
 #projects .connect-shell{grid-template-columns:155px minmax(0,1fr) 135px;gap:10px}
 #projects .connect-heading{gap:12px}
 #projects .connect-heading h2{font-size:30px}
 #projects .connect-heading p{font-size:12px}
 #projects .connect-kicker{font-size:11px;padding:7px 12px}
 #projects .connect-channel-card{flex-direction:column;text-align:center;gap:7px;padding:11px 6px 9px}
 #projects .connect-channel-info{align-items:center}
 #projects .connect-channel-info strong{font-size:14px;min-height:36px}
 #projects .connect-channel-cta{font-size:9px;padding-inline:2px}
 #projects .connect-panel-heading{gap:7px;margin-bottom:12px}
 #projects .connect-youtube-seal{width:29px;height:29px}
 #projects .connect-youtube-seal svg{width:19px}
 #projects .connect-panel-heading h3{font-size:17px}
 #projects .connect-panel-heading p{font-size:9px}
 #projects .connect-app-showcase{flex-direction:column;gap:14px}
 #projects .connect-device{width:64px}
 #projects .connect-app-identity{position:relative;align-self:center;width:100%}
 #projects .connect-app-art{width:84px;height:84px}
 #projects .connect-app h3{font-size:19px}
 #projects .connect-play{flex-wrap:wrap;gap:5px;min-height:49px}
 #projects .connect-play svg{width:20px}
 #projects .connect-play strong{font-size:13px}
 #projects .connect-play-arrow{display:none}
 #projects .connect-tools h3{font-size:20px}
 #projects .connect-tools p{font-size:11px}
 #projects .connect-tools-icon{width:60px;height:60px}
 #projects .connect-tools-cta{font-size:10px;padding:8px 4px;gap:3px}
 #projects .connect-tools-cta svg{width:12px}
}
@media(max-width:600px){
 #projects.connection-section{padding:24px 0;background:linear-gradient(#fff0ccde,#fff0ccea),url('/tithra-site/assets/images/reference-temple-hero.webp') center/cover no-repeat}
 #projects.connection-section::before{inset:7px;border-radius:10px}
 #projects .connect-heading{display:block;margin-bottom:18px}
 #projects .connect-kicker{display:inline-block;font-size:10px;margin-bottom:10px;padding:4px 14px}
 #projects .connect-heading h2{font-size:27px}
 #projects .connect-heading p{font-size:11px;line-height:1.9}
 #projects .connect-heading-ornament{max-width:220px}
 #projects .connect-shell{grid-template-columns:minmax(0,1fr);gap:12px}
 #projects .connect-app{padding:16px;display:grid;grid-template-columns:minmax(0,1fr) 144px;gap:10px 16px}
 #projects .connect-app-showcase{gap:8px;min-width:0}
 #projects .connect-device{display:none}
 #projects .connect-app-identity{display:flex;flex-direction:column;align-items:center}
 #projects .connect-app-art{width:72px;height:72px;margin-bottom:6px}
 #projects .connect-app h3{font-size:18px;margin-bottom:4px}
 #projects .connect-app p{font-size:11px;line-height:1.7}
 #projects .connect-app p br{display:none}
 #projects .connect-play{min-height:48px;padding:8px;gap:7px}
 #projects .connect-play strong{font-size:15px}
 #projects .connect-play-arrow{display:none}
 #projects .connect-channels{padding:16px 12px 12px}
 #projects .connect-panel-heading{gap:9px;margin-bottom:13px}
 #projects .connect-panel-heading h3{font-size:21px}
 #projects .connect-panel-heading p{font-size:10px}
 #projects .connect-youtube-seal{width:33px;height:33px}
 #projects .connect-channel-grid{grid-template-columns:minmax(0,1fr);gap:9px}
 #projects .connect-channel-card{padding:11px 12px;gap:14px;text-align:left}
 #projects .connect-channel-art{width:68px;height:68px}
 #projects .connect-channel-info{gap:4px}
 #projects .connect-channel-info strong{font-size:16px}
 #projects .connect-youtube-label{font-size:9px}
 #projects .connect-channel-cta{font-size:10px;padding:4px 8px;min-height:29px;width:auto;gap:10px}
 #projects .connect-tools{display:grid;grid-template-columns:48px minmax(0,1fr) 120px;gap:6px 12px;justify-items:start;text-align:left;padding:17px 14px}
 #projects .connect-tools-icon{width:48px;height:48px;grid-row:1/3}
 #projects .connect-tools-icon svg{width:25px;height:25px}
 #projects .connect-tools h3{font-size:20px;align-self:end}
 #projects .connect-tools p{font-size:10px;line-height:1.7;grid-column:2;max-width:145px}
 #projects .connect-tools p br{display:none}
 #projects .connect-tools-cta{grid-column:3;grid-row:1/3;width:100%;font-size:10px;min-height:40px;margin:0;padding:7px;gap:4px;align-self:center}
}
@media(max-width:390px){
 #projects .connect-app{grid-template-columns:minmax(0,1fr) 128px;padding:14px;gap:12px}
 #projects .connect-play svg{width:23px}
 #projects .connect-tools{grid-template-columns:43px minmax(0,1fr);gap:5px 12px}
 #projects .connect-tools-icon{width:43px;height:43px;grid-row:1/4}
 #projects .connect-tools-cta{grid-column:2;grid-row:3;width:auto;padding:6px 13px;min-height:34px;margin-top:2px}
 #projects .connect-tools p{max-width:none}
}
@media(prefers-reduced-motion:reduce){
 #projects.connection-section .connect-shell,#projects.connection-section .connect-panel,#projects.connection-section a,#projects.connection-section img,#projects.connection-section .connect-channel-cta>span,#projects.connection-section .connect-tools-cta>span,#projects.connection-section .connect-all-videos span{transition:none;animation:none;transform:none;opacity:1}
}
