/* MOLISAN 2.0 — shared typography and the product-led Home and catalogue. */
:root{--deep:#073f35;--green:#087858;--ink:#153d34;--muted:#576e65;--line:#dce6e1;--mint:#eaf3ed;--gold:#bc914d}
body{font-size:16px;line-height:1.65}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{min-height:82px;padding-inline:clamp(1rem,4vw,4rem);gap:1.5rem;background:#fff}
.brand{font-size:1.1rem;letter-spacing:.15em}
.main-nav a{font-size:.9rem}
.language-nav a{font-size:.8rem}
.eyebrow{font-size:.8rem;letter-spacing:.14em;line-height:1.5}
.button{border-radius:5px;min-height:3.25rem;padding:.85rem 1.5rem;font-size:.94rem;line-height:1.4;transition:background .15s ease,box-shadow .15s ease}
.button:hover{transform:none;background:#0b5746}
.button.secondary:hover{background:#eaf3ed}
.button.light:hover{background:#eaf3ed;color:var(--deep)}
.text-link{display:inline-flex;align-items:center;gap:1.3rem;min-height:44px;color:var(--deep);font-size:.94rem;font-weight:650;text-decoration:none;border-bottom:1px solid currentColor;line-height:1.4}
.text-link:hover{color:var(--green)}
.text-link span[aria-hidden]{font-size:1.15rem}
.page-hero{min-height:280px;padding:4rem max(1.25rem,calc((100vw - 1200px)/2));gap:2.5rem;background:#f0f6f2}
.page-hero:has(> .page-hero-copy:only-child){grid-template-columns:1fr}
.page-hero::after{display:none}
.page-hero h1{max-width:23ch;font-size:clamp(2.5rem,4.4vw,4.2rem);line-height:1.12;letter-spacing:-.04em}
.hero-summary{max-width:65ch;margin-top:1.35rem;font-size:1.05rem}
.page-packshot img{height:340px}
.content-shell{max-width:1200px;padding-top:3.25rem;padding-bottom:4.5rem}
.content-shell h2{max-width:30ch;margin-top:3rem;padding-top:1.25rem;font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.2;letter-spacing:-.025em}
.content-shell h3{font-size:1.25rem}
.content-shell p{line-height:1.75}
.content-shell table{font-size:1rem}
.content-shell th{font-size:.875rem}
.site-footer{padding:3rem clamp(1.25rem,4vw,4rem)}
.footer-nav a,.footer-bottom{font-size:.875rem}
.brand-home h1,.brand-home h2{font-family:Iowan Old Style,Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.035em;color:var(--deep)}
.brand-home h2{margin:0;font-size:clamp(2.1rem,3.5vw,3.2rem);line-height:1.15;max-width:25ch}
.home-shell{max-width:1360px;margin:0 auto;padding:5rem clamp(1.25rem,4vw,4rem)}
.home-feature{display:grid;grid-template-columns:1.1fr 1fr;align-items:stretch;max-width:1440px;min-height:620px;margin:0 auto;padding:1.25rem 1.25rem 0;gap:0}
.home-feature-copy{padding:clamp(2.5rem,5vw,5rem) clamp(1.25rem,4vw,4rem);display:flex;flex-direction:column;justify-content:center;background:#f0f5f1}
.home-feature-copy .eyebrow{margin-bottom:1.75rem}
.home-feature h1{margin:0;max-width:13ch;font-size:clamp(3rem,4.8vw,4.8rem);line-height:1.07}
.home-lead{max-width:42ch;margin:1.75rem 0 0;font-size:1.1rem;color:var(--muted);line-height:1.65}
.home-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.1rem 1.75rem;margin-top:2rem}
.home-product-stage{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;margin:0;padding:2rem 2.4rem 1.5rem;background:#0d5141;background:radial-gradient(ellipse at 55% 48%,#407765 0,#1c5b49 40%,#093d31 100%);color:#fff;overflow:hidden}
.stage-label{align-self:stretch;display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:0;font-size:.9rem;font-weight:600;letter-spacing:.1em}
.stage-label span{font-size:.75rem;line-height:1.4;font-weight:400;letter-spacing:.08em;text-align:right}
.home-product-stage>img{display:block;object-fit:contain;width:auto;max-width:100%;height:435px;margin:1.5rem 0 1.25rem;filter:drop-shadow(12px 24px 14px rgba(0,0,0,.22));transform:rotate(7deg)}
.home-product-stage figcaption{display:flex;align-self:stretch;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid #7da392;font-size:.875rem;color:#e7f0eb}
.home-section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.5rem}
.home-section-heading p{max-width:40ch;color:var(--muted)}
.home-section-heading .eyebrow{margin:0 0 .75rem;color:var(--green)}
.home-section-heading>.text-link{flex-shrink:0}
.product-collection{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem 1.25rem}
.product-tile{min-width:0;display:flex;flex-direction:column;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.product-tile-link{text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease}
.product-tile-link:hover,.product-tile:focus-within{border-color:#7aab92;box-shadow:0 9px 25px rgba(7,63,53,.075)}
.product-visual{display:grid;place-items:center;background:#f2f6f2;min-height:240px;padding:1.5rem}
.product-visual img,.product-visual .catalogue-photo{display:block;object-fit:contain;width:auto;max-width:100%;height:190px;margin:0;filter:drop-shadow(3px 8px 6px rgba(20,61,41,.08))}
.product-info{display:flex;flex:1;flex-direction:column;align-items:stretch;min-width:0;padding:1.4rem 1.2rem 1.2rem}
.product-info h3,.content-shell .product-info h3{margin:0 0 .8rem;color:var(--deep);font-family:inherit;font-size:1rem;line-height:1.45;font-weight:700;letter-spacing:.005em;overflow-wrap:anywhere}
.product-info .product-purpose{margin:0 0 1.35rem;color:var(--muted);font-size:.95rem;line-height:1.6}
.product-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:44px;margin-top:auto;border-top:1px solid var(--line);padding:.85rem 0 0;color:var(--deep);font-size:.875rem;font-weight:650;text-decoration:none;line-height:1.4}
a.product-link:hover{text-decoration:underline;text-underline-offset:.2em}
.product-description{margin:0 0 1rem;color:var(--ink);font-size:.95rem}
.product-description summary{cursor:pointer;color:var(--deep);font-weight:600;min-height:44px;padding:.65rem 0;line-height:1.5}
.product-description p{margin:.5rem 0 1rem}
.product-description summary:focus-visible{outline:3px solid var(--green-bright);outline-offset:3px}
.range-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:3rem;border-top:1px solid var(--line);padding-top:2rem;gap:1.5rem}
.range-link{display:grid;grid-template-columns:75px 1fr;gap:1rem;align-items:center;text-decoration:none;padding:.5rem 0;min-width:0}
.range-image{display:grid;place-items:center;min-height:110px;background:#f2f6f2;border-radius:5px}
.range-image img{width:55px;height:85px;object-fit:contain}
.range-link h3{margin:0 0 .5rem;font-size:1.1rem;line-height:1.35}
.range-link p{margin:0 0 .75rem;color:var(--muted);font-size:.875rem;line-height:1.55}
.range-link>div>span{font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:.25em}
.home-applications{background:#f0f5f1}
.application-collection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 3.5rem}
.application-link{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.4rem 0;border-top:1px solid #bfd3c8;text-decoration:none;min-width:0}
.application-link h3{font-size:1.05rem;font-weight:500;line-height:1.5;margin:0}
.application-link:hover{color:var(--green)}
.home-research{display:grid;grid-template-columns:1.05fr 1fr;gap:5rem;align-items:center;background:#073f35;color:#fff}
.home-research h2{color:#fff}
.home-research .eyebrow{color:#acd8c5}
.home-research p:not(.eyebrow){margin:1.5rem 0 0;max-width:43ch;color:#cedfd6;font-size:1rem}
.research-link{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.6rem 0;border-bottom:1px solid #568576;color:white;text-decoration:none;font-size:1.2rem}
.research-link:first-child{border-top:1px solid #568576}
.research-link:hover{color:#acd8c5}
.home-stories .story-grid{gap:1.25rem}
.home-stories .story-card{padding:1.65rem;border-radius:8px;min-height:290px;border-color:var(--line);background:#fafcf9}
.home-stories .story-card .context{font-size:.8rem;line-height:1.5;letter-spacing:.07em}
.home-stories .story-card h3{font-size:1rem;line-height:1.5}
.home-stories .story-card p:last-child{font-family:Iowan Old Style,Georgia,serif;font-size:1.2rem;color:var(--deep);line-height:1.6}
.home-origin{display:grid;grid-template-columns:.9fr 1.1fr;gap:5rem;border-top:1px solid var(--line)}
.origin-copy>p:not(.eyebrow){color:var(--muted);margin:1.5rem 0}
.home-origin .timeline{grid-template-columns:1fr 1fr;gap:2rem;align-content:center}
.home-origin .timeline::before,.home-origin .milestone::before{display:none}
.home-origin .milestone{padding:1rem 0 0;border-top:1px solid var(--line)}
.home-origin .milestone strong{font-family:Georgia,serif;font-size:2rem;font-weight:400}
.home-origin .milestone p{font-size:.95rem}
body[data-layout="catalogue"] .content-shell{max-width:1360px}
body[data-layout="catalogue"] .page-hero{min-height:240px;padding-block:3.5rem}
body[data-layout="catalogue"] .page-hero h1{font-size:clamp(2.5rem,4.2vw,4rem)}
body[data-layout="catalogue"] .product-collection{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
body[data-layout="catalogue"] .product-tile{height:100%}
.catalogue-section{margin-bottom:4rem;scroll-margin-top:6rem}
.collection-heading{display:flex;align-items:baseline;justify-content:space-between;gap:2rem;margin:0 0 1.75rem}
.content-shell .collection-heading h2{margin:0;padding:0;border:0;font-size:1.9rem;max-width:none}
.collection-heading p{font-size:1rem;color:var(--muted);max-width:45ch}
.catalogue-section:not(:first-child){border-top:1px solid var(--line);padding-top:3rem}
.solution-detail{display:grid;grid-template-columns:240px 1fr;gap:3rem;padding:2.5rem 0;border-bottom:1px solid var(--line);align-items:start}
.solution-visual{display:grid;place-items:center;background:#f2f6f2;border-radius:8px;padding:2rem;min-height:340px}
.solution-visual .catalogue-photo{height:290px;width:auto;max-width:100%;margin:0}
.content-shell .solution-copy h2{border:0;margin:0 0 1.5rem;padding:0;font-family:inherit;font-size:1.65rem;line-height:1.35;overflow-wrap:anywhere;scroll-margin-top:7rem}
.solution-copy>p:nth-last-child(-n+2){font-size:.95rem;color:var(--muted)}
.gateway h1{font-size:clamp(3rem,7vw,6rem);line-height:1.08}
.gateway nav a{min-width:0}
html[lang="ka-GE"] .brand-home h1,html[lang="ka-GE"] .brand-home h2{font-family:"Noto Serif Georgian","Sylfaen",Georgia,serif;letter-spacing:-.015em;line-height:1.25}
html[lang="ka-GE"] .home-feature h1{font-size:clamp(2.5rem,3.8vw,3.75rem);max-width:17ch}
html[lang="ka-GE"] .page-hero h1{font-size:clamp(2.2rem,3.8vw,3.6rem);line-height:1.25}
@media(min-width:1500px){.home-feature{min-height:660px}.home-product-stage>img{height:475px}}
@media(max-width:1100px){.home-feature-copy{padding:2.5rem}.home-feature h1{font-size:3.2rem}.home-product-stage{padding:1.7rem}.home-product-stage>img{height:390px}.product-collection{grid-template-columns:repeat(2,minmax(0,1fr))}.range-collection{gap:1rem}.range-link{grid-template-columns:60px 1fr}.home-research,.home-origin{gap:3rem}.solution-detail{grid-template-columns:200px 1fr;gap:2rem}}
@media(max-width:980px){.site-header{min-height:72px;gap:.7rem;grid-template-columns:auto auto 1fr}.main-nav a{font-size:1rem}.main-nav{z-index:45}.home-feature{min-height:550px}.home-feature-copy{padding:2rem}.home-feature h1{font-size:2.85rem}.home-product-stage>img{height:345px}.stage-label{flex-direction:column;align-items:start;gap:.35rem}.stage-label span{text-align:left}.home-lead{font-size:1rem}.home-shell{padding-block:3.5rem}.range-collection{grid-template-columns:1fr}.range-link{grid-template-columns:80px 1fr;padding:.75rem 0}.range-link p{max-width:60ch}.home-origin{grid-template-columns:1fr}.home-stories .story-grid{grid-template-columns:1fr}.home-stories .story-card{min-height:auto}.home-stories .story-card .context{margin:1.3rem 0 .6rem}body[data-layout="catalogue"] .product-collection{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-heading{display:block}}
@media(max-width:680px){.site-header{padding:.6rem 1rem;min-height:68px;gap:.55rem}.brand{font-size:.87rem}.menu-toggle{padding:0 .65rem;font-size:.8rem}.language-nav a{min-width:1.8rem;padding:0 .25rem;font-size:.75rem}.language-nav{gap:.1rem;padding:.2rem}.home-feature{padding:.65rem .65rem 0;grid-template-columns:1fr;min-height:auto}.home-feature-copy{padding:2.1rem 1.25rem}.home-feature h1{font-size:clamp(2.5rem,9.8vw,3.4rem);max-width:14ch}.home-feature-copy .eyebrow{margin-bottom:1.1rem;font-size:.75rem}.home-lead{margin-top:1.15rem}.home-actions{margin-top:1.4rem;gap:.75rem 1.4rem}.home-actions .button{width:auto}.home-actions .text-link{font-size:.875rem}.home-product-stage{padding:1.25rem 1.4rem 1rem}.stage-label{flex-direction:row;align-items:center}.stage-label span{max-width:15ch;text-align:right}.home-product-stage>img{height:295px;margin:1rem 0}.home-product-stage figcaption{font-size:.8rem}.home-shell{padding:2.8rem 1.15rem}.home-section-heading{align-items:start;flex-direction:column;gap:1rem;margin-bottom:1.75rem}.brand-home h2{font-size:2rem;line-height:1.2}.home-section-heading p{margin:0}.product-collection,body[data-layout="catalogue"] .product-collection{grid-template-columns:1fr;gap:1.5rem}.product-visual{min-height:215px;padding:1.25rem}.product-visual img,.product-visual .catalogue-photo{height:175px;width:auto;margin:0}.product-info{padding:1.25rem}.product-info h3,.content-shell .product-info h3{font-size:1.05rem}.product-info .product-purpose{margin-bottom:1rem;font-size:1rem}.product-link{font-size:.94rem}.product-description{font-size:1rem}.application-collection{grid-template-columns:1fr}.application-link{padding:1.15rem 0}.home-research{grid-template-columns:1fr;gap:1.75rem}.research-link{padding:1.25rem 0;font-size:1.15rem}.home-origin{gap:2rem}.home-origin .timeline{gap:1.5rem}.home-origin .milestone strong{font-size:1.7rem}.home-origin .milestone p{font-size:.875rem}.range-collection{margin-top:2rem;padding-top:1.25rem}.range-link{grid-template-columns:70px 1fr}.page-hero,body[data-layout="catalogue"] .page-hero{padding:2.5rem 1.15rem;grid-template-columns:1fr;min-height:auto}.page-hero h1{font-size:2.6rem;line-height:1.16;overflow-wrap:normal}.hero-summary{font-size:1rem}.content-shell{padding:2.5rem 1.15rem}.content-shell h2{font-size:1.85rem}.catalogue-section{margin-bottom:2rem}.content-shell .collection-heading h2{font-size:1.7rem}.solution-detail{grid-template-columns:1fr;gap:1.5rem;padding:2rem 0}.solution-visual{min-height:255px;padding:1.5rem}.solution-visual .catalogue-photo{height:235px;width:auto}.content-shell .solution-copy h2{font-size:1.4rem}.footer-top{gap:1.5rem}html[lang="ka-GE"] .home-feature h1{font-size:clamp(2rem,7.9vw,2.7rem)}html[lang="ka-GE"] .brand-home h2{font-size:1.85rem}html[lang="ka-GE"] .page-hero h1{font-size:2.1rem}}
@media(prefers-reduced-motion:reduce){.product-tile-link,.button{transition:none}}
