/* Sahan I Herath — V12 detail-page and image presentation stylesheet.
   This file intentionally comes AFTER styles.css, avoiding further patch accumulation. */
:root {--detail-soft:#f5f2ec;--detail-border:#dedfdf;--detail-muted:#686c75}
/* Desktop gallery: preserve entire portrait rather than stretching it to fill wide cards. */
.editorial-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;margin-top:20px;align-items:stretch}
.photo-story{display:flex;flex-direction:column;min-width:0;background:#24262e;border:1px solid #3a3d45;border-radius:15px;overflow:hidden;color:#fff;transition:transform .2s,border-color .2s}
.photo-story:hover{transform:translateY(-4px);border-color:#ff7667}
.photo-story:focus-visible{outline:3px solid #ff7567;outline-offset:4px}
.photo-story-visual{height:330px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 48%,#383d48 0%,#181b22 85%);padding:16px}
.photo-story:nth-child(2) .photo-story-visual{background:radial-gradient(circle at 50% 45%,#345e64 0%,#1c252e 78%)}
.photo-story:nth-child(3) .photo-story-visual{background:radial-gradient(circle at 50% 45%,#5a4f44 0%,#272525 82%)}
.photo-story-visual img{display:block;position:static!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;max-width:100%;max-height:100%;transform:none!important;filter:drop-shadow(0 12px 15px #0005)}
.photo-story-copy{padding:23px 24px 27px;display:flex;flex:1;flex-direction:column;min-height:215px}
.photo-story-kicker,.detail-count,.detail-eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:800;color:#ed6b5c}
.photo-story h3{font:800 22px/1.25 Manrope,sans-serif;letter-spacing:-.8px;margin:13px 0 8px;color:#fff}
.photo-story p{color:#bcbfc9;font-size:13px;line-height:1.7;margin:0 0 18px}
.photo-story-action{font-weight:800;font-size:12px;margin-top:auto;color:#fff}
.home-gallery-context{color:#a8a9b0;font-size:14px;line-height:1.8;max-width:630px;margin:0 0 30px}
/* Full detail pages */
.detail-block{padding:100px 0;position:relative;overflow:hidden}
.detail-block.tone-light{background:#faf9f7;color:#15161b}
.detail-block.tone-cream{background:#eeeae3;color:#15161b}
.detail-block.tone-dark{background:#15161b;color:#fff}
.detail-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);align-items:end;gap:45px;margin-bottom:36px}
.detail-heading h2,.detail-split h2{font:800 clamp(36px,4vw,58px)/1.12 Manrope,sans-serif;letter-spacing:-.055em;margin:18px 0 0}
.detail-heading p,.detail-split p{color:#5a5f68;font-size:15px;line-height:1.85;margin:0}
.tone-dark .detail-split p{color:#bbbcc6}
.detail-cards{display:grid;gap:16px}
.detail-cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.detail-card{padding:30px 27px;background:#fff;border:1px solid #dedbd7;border-radius:13px;display:flex;flex-direction:column;gap:9px;min-height:248px}
.tone-light .detail-card{background:#f3f1ee}
.detail-card h3{font:800 21px/1.28 Manrope,sans-serif;letter-spacing:-.6px;margin:7px 0 0;color:#15161b}
.detail-card p{color:#565a64;font-size:14px;line-height:1.8;margin:0}
.detail-card .inline-cta{margin-top:auto;padding-top:12px}
.detail-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9%;align-items:start}
.detail-split>div>p{margin:20px 0}
.detail-muted{color:#686b72!important;line-height:1.8}
.credential-list{border-top:1px solid #d2d3d4}
.credential-list>div{display:flex;flex-direction:column;gap:7px;padding:20px 2px;border-bottom:1px solid #d2d3d4}
.credential-list strong{font-size:16px;font-weight:800}
.credential-list span{color:#747680;font-size:13px;line-height:1.6}
.detail-outline{padding:35px 38px;border:1px solid #53565f;background:#20232a;border-radius:14px}
.detail-outline h3{font:800 25px/1.25 Manrope,sans-serif;letter-spacing:-.7px;margin:12px 0}
.detail-outline p{line-height:1.85;font-size:14px}
.detail-outline.light-outline{background:#fff;border-color:#dedde0}
.detail-outline.light-outline p{color:#63656d}
.detail-outline a:not(.pill-link):not(.contact-big-link){color:#ba4037;text-decoration:underline;text-underline-offset:3px}
.detail-status{font-weight:800;font-size:10px;color:#ff8375;letter-spacing:1.7px}
.patent-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 25px}
.patent-fields span{border:1px dashed #575b66;border-radius:8px;padding:13px 10px;color:#c5c7d0;font-size:11px}
.detail-outline code{font-size:12px;background:#272a31;color:#eaecee;padding:2px 5px;border-radius:3px}
.pill-link,.inline-cta{display:inline-flex;align-items:center;gap:10px;font-weight:800;text-decoration:none;color:#cf463d;font-size:13px}
.pill-link{padding:14px 19px;border:1px solid #a4a6aa;border-radius:40px;margin-top:25px;color:#15161b;background:#fff}
.pill-link.light-pill{background:#fff;color:#16171a;border:0}
.award-deep{display:grid;grid-template-columns:minmax(0,41%) minmax(0,1fr);gap:52px;align-items:center;background:#f1f0ed;border:1px solid #e3e1de;border-radius:18px;padding:20px;overflow:hidden}
.award-deep-image{display:flex;position:relative;flex-direction:column;align-items:center;background:#1c2429;border-radius:13px;padding:22px;min-height:510px;justify-content:center;max-height:620px;color:#fff;gap:15px}
.award-deep-image img{max-width:100%;max-height:500px;width:100%;height:480px;object-fit:contain;object-position:center center}
.award-deep-image span{font-size:12px;font-weight:700}
.award-deep-copy{padding:20px 26px 20px 0}
.award-deep-copy h3{font:800 clamp(30px,3vw,44px)/1.15 Manrope,sans-serif;letter-spacing:-.045em;margin:18px 0 22px}
.award-deep-copy p{font-size:14px;color:#52565d;line-height:1.9}
.award-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;padding:24px 0;margin:25px 0;border-block:1px solid #d1d1d1}
.award-facts div{display:flex;flex-direction:column;gap:8px}
.award-facts span{color:#777981;font-size:11px;letter-spacing:.7px}
.award-facts strong{font-size:13px;line-height:1.55}
.contact-big-link{display:flex;align-items:center;justify-content:space-between;font:800 clamp(23px,2.7vw,36px) Manrope,sans-serif;color:#16181c;padding:22px 0;border-bottom:1px solid #dedede}
.detail-outline small{display:block;margin-top:14px;color:#777982}
.business-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.business-detail{display:flex;flex-direction:column;padding:32px;border-radius:14px;background:#fff;border:1px solid #dedbd6;min-height:250px}
.business-detail h3{font:800 26px Manrope,sans-serif;margin:19px 0 10px;letter-spacing:-.7px}
.business-detail p{font-size:14px;line-height:1.8;color:#61646b;max-width:530px;margin:0 0 20px}
.business-detail a{font-size:13px;font-weight:800;color:#c94a3e;margin-top:auto}
.channel-cta{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:35px;background:#171a20;color:#fff;border-radius:15px;margin-top:25px}
.channel-cta h3{font:800 24px Manrope,sans-serif;margin:0 0 12px}
.channel-cta p{font-size:13px;color:#c0c1c8;margin:0}
.channel-cta a{display:block;white-space:nowrap;background:#f45c51;color:#fff;border-radius:40px;padding:16px 22px;font-size:13px;font-weight:800}
@media(max-width:1000px){.editorial-gallery{gap:12px}.photo-story-visual{height:280px}.detail-block{padding:75px 0}.award-deep{gap:22px}.award-deep-copy{padding:15px}}
@media(max-width:820px){.detail-heading,.detail-split{grid-template-columns:1fr;gap:25px}.detail-cards.three{grid-template-columns:repeat(2,minmax(0,1fr))}.editorial-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-story-visual{height:270px}.photo-story-copy{min-height:195px}.award-deep{grid-template-columns:1fr;gap:15px}.award-deep-image{min-height:400px;max-height:440px}.award-deep-image img{height:355px}.business-detail-grid{gap:12px}}
@media(max-width:580px){.detail-block{padding:60px 0}.detail-cards.three,.editorial-gallery,.business-detail-grid{grid-template-columns:1fr}.detail-heading{margin-bottom:24px}.detail-card{min-height:0;padding:26px}.photo-story-visual{height:320px}.photo-story-copy{min-height:0;padding:20px 22px 25px}.photo-story p{margin-bottom:14px}.award-deep{padding:12px}.award-deep-image{min-height:360px;max-height:400px}.award-deep-image img{height:310px}.award-deep-copy{padding:10px}.award-facts{grid-template-columns:1fr 1fr;gap:12px}.detail-outline{padding:28px}.patent-fields{grid-template-columns:1fr}.channel-cta{align-items:stretch;flex-direction:column;padding:24px}.channel-cta a{white-space:normal;text-align:center}.business-detail{min-height:0}.detail-heading h2,.detail-split h2{font-size:clamp(33px,10vw,48px)}}
@media(prefers-reduced-motion:reduce){.photo-story{transition:none}}
