@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--navy:#082448;--blue:#075fb5;--cyan:#16a9d5;--ice:#eaf6fc;--ink:#142b47;--muted:#687887;--line:#dce7ef}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.65;background:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.18;letter-spacing:-1.3px;margin:0 0 22px;font-weight:650}h1{font-size:clamp(36px,4vw,60px)}h2{font-size:34px}h3{font-size:19px;letter-spacing:-.4px}p{margin:0 0 22px}em{font-style:normal;color:var(--blue)}.wrap{width:min(1280px,90%);margin-inline:auto}.utility{background:var(--navy);color:#dce7f3;font-size:10.5px;letter-spacing:.8px;line-height:1.3}.utility>div{width:min(1280px,90%);margin:auto;display:flex;justify-content:space-between;align-items:center;padding:7px 0}.utility-contacts{display:flex;align-items:center;gap:16px;letter-spacing:.2px}.utility-contacts a{display:inline-flex;align-items:center;gap:6px;color:inherit}.utility-contacts a:hover{color:#fff}.utility-contacts svg{flex-shrink:0;vertical-align:middle;width:12px;height:12px}.utility>div>span:last-child{display:flex;align-items:center;gap:16px;letter-spacing:.2px}.utility i{height:11px;border-left:1px solid #48607c}.utility label{font-size:0}.utility select{background:transparent;border:0;color:white;font-size:11px;padding:0;cursor:pointer}.utility option{color:var(--ink)}header{position:relative;z-index:10;background:white}.brandrow{width:min(1280px,90%);margin:auto;display:flex;align-items:center;height:108px;gap:30px}.logo{width:240px;height:auto}.brand-note{font-size:10px;letter-spacing:1.5px;color:var(--muted);border-left:1px solid var(--line);padding-left:28px;line-height:2}.brand-note b{font-size:11px;letter-spacing:.2px;font-weight:400;color:var(--ink)}.brandrow>.button{margin-left:auto}nav{display:flex;gap:25px;justify-content:center;align-items:center;border-block:1px solid var(--line);height:54px;font-size:12px;font-weight:500}nav a:hover,nav a.current{color:var(--blue)}nav a.current{box-shadow:0 2px var(--cyan);align-self:stretch;display:flex;align-items:center}nav button{background:transparent;border:0;font-size:11px;color:var(--blue)}.menu{display:none}#mega{position:absolute;background:white;top:100%;left:5%;width:90%;padding:30px;box-shadow:0 18px 30px #08244818;border-bottom:3px solid var(--cyan)}.mega-head{display:flex;justify-content:space-between;font-weight:600;margin-bottom:20px}.mega-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 30px;font-size:12px}.mega-grid a:hover{color:var(--blue)}.button{background:var(--blue);color:white;display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:15px 23px;border:1px solid var(--blue);font-weight:500;font-size:13px;border-radius:3px;box-shadow:0 3px 0 #034a8d;transition:transform .2s,background .2s}.button:hover{background:var(--navy);transform:translateY(-2px)}.button.small{padding:12px 20px}.text-link{display:inline-flex;align-items:center;gap:24px;font-weight:550;font-size:13px}.text-link:hover{color:var(--blue)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.2px;color:var(--blue);margin-bottom:22px}.line{display:inline-block;width:28px;height:1px;background:var(--cyan);vertical-align:middle;margin-right:10px}.hero{position:relative;background:linear-gradient(110deg,#f4f9fc 0%,#eff7fb 55%,#e5f4fc 100%);overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.1fr 1fr;min-height:550px;position:relative}.hero-copy{padding:70px 0 60px;z-index:2}.hero h1{font-size:clamp(38px,3.6vw,56px);line-height:1.2;letter-spacing:-2px;margin-bottom:22px}.hero-copy>p:not(.eyebrow){font-size:15px;color:#61758a;line-height:1.9;max-width:440px}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:30px}.hero-bottom{display:flex;align-items:center;gap:12px;font-size:8px;letter-spacing:1px;line-height:1.8;margin-top:48px;color:var(--blue)}.hero-bottom b{font-size:10px;color:#5c7088;font-weight:400;letter-spacing:.2px}.badge-seal{font-size:18px;border:1px solid #9bbcd2;border-radius:50%;height:40px;width:40px;display:grid;place-items:center}.hero-art{position:relative;min-height:550px}.orb{position:absolute;border:1px solid #bddbeb;border-radius:50%;width:440px;height:440px;left:6%;top:60px}.orb-two{width:335px;height:335px;left:15%;top:112px;background:#d8edf7}.hero-art>img{position:absolute;height:470px;width:260px;object-fit:contain;left:26%;top:15px;mix-blend-mode:multiply;transform:rotate(24deg);filter:drop-shadow(15px 18px 10px #072b4820);transition:opacity .35s}.art-caption{position:absolute;top:48px;right:0;font-size:11px;letter-spacing:3px;line-height:1.8;color:#65879f;z-index:2}.art-caption b{font-size:16px;color:#23445e;font-weight:500}.art-label{position:absolute;bottom:58px;left:26%;font-size:8px;letter-spacing:2.1px;color:#496f89}.art-label>span{margin-inline:10px}.art-number{position:absolute;bottom:35px;right:0;font-family:Manrope;font-size:32px;font-weight:600;color:var(--blue)}.art-number small{font-size:12px;color:#6e8ba2}.slider-controls{position:absolute;bottom:20px;left:5%;display:flex;justify-content:space-between;align-items:center}.slider-controls>div{display:flex;gap:12px}.slider-controls button{background:transparent;border:1px solid #b7d0df;border-radius:50%;width:32px;height:32px;line-height:1}.slider-controls .dot{width:6px;height:6px;border:0;background:#acc6d7;padding:0}.slider-controls .dot.active{width:27px;border-radius:5px;background:var(--blue)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.section-heading h2{margin:0}.section-heading p.eyebrow{margin-bottom:12px}.section-heading>p{font-size:13px;color:var(--muted);margin:0}.featured{padding-block:65px 70px}.portrait-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.portrait{aspect-ratio:1/2;max-height:600px;position:relative;border:1px solid var(--line);overflow:hidden;background:linear-gradient(160deg,#fff 50%,#edf8fc 72%,#d7edf8 100%);transition:transform .25s,box-shadow .25s}.portrait:after{content:'';position:absolute;width:150%;height:45%;border-radius:50%;border:1px solid #b9dced;bottom:-21%;left:-30%;transform:rotate(-24deg);pointer-events:none}.portrait:hover{transform:translateY(-6px);box-shadow:0 12px 24px #08244812}.portrait-num{position:absolute;top:16px;left:18px;font-size:10px;letter-spacing:1px;color:#8fa7ba}.portrait img{width:83%;height:69%;object-fit:contain;mix-blend-mode:multiply;position:absolute;top:12%;left:8.5%;transition:transform .4s}.portrait:hover img{transform:scale(1.04)}.portrait>div{position:absolute;bottom:22px;left:18px;right:16px;display:flex;gap:5px;justify-content:space-between;align-items:end;z-index:1}.portrait h3{font-size:18px;line-height:1.3;max-width:150px;margin:0}.portrait>div>span{color:var(--blue);font-size:21px}.why{background:#f5f8fc;border-block:1px solid #eaf0f4;padding:65px 0}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.why-grid article{background:white;padding:28px 24px;border:1px solid #e9eff4;box-shadow:0 5px 15px #08244803;transition:transform .2s}.why-grid article:hover{transform:translateY(-4px)}.why-icon{height:42px;width:42px;background:#edf7fc;color:var(--blue);display:grid;place-items:center;font-size:23px;margin-bottom:25px;border-radius:4px}.why-grid h3{font-size:17px;letter-spacing:-.5px;margin-bottom:12px}.why-grid p{font-size:12px;color:var(--muted);line-height:1.8;margin:0}.gallery{padding-block:65px}.gallery-viewport{overflow-x:auto;scrollbar-width:none}.gallery-track{display:flex;gap:18px;width:max-content;animation:drift 90s linear infinite}.gallery-viewport:hover .gallery-track,.gallery-viewport:focus-within .gallery-track{animation-play-state:paused}.gallery-track>a,.gallery-duplicate>a{flex:0 0 250px;width:250px;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:white;box-shadow:0 3px 12px rgba(8,36,72,0.06);transition:transform .25s ease,box-shadow .25s ease}
.gallery-track>a:hover{transform:translateY(-4px);box-shadow:0 8px 22px rgba(8,36,72,0.12)}
.gallery-track img{height:200px;width:100%;padding:0;object-fit:cover;object-position:center;display:block;background:#f4f8fb}
.gallery-track a>span{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:600;color:var(--navy);padding:14px 16px;border-top:1px solid #eef3f7;background:#fff}.gallery-duplicate{display:flex;gap:18px}footer{border-top:1px solid var(--line);background:#f5f9fc;padding:55px 5% 0}.footer-top{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.2fr .75fr 1fr 1.1fr;gap:60px;font-size:11px;color:#68798b}.footer-top h3{font-size:13px;color:var(--ink);letter-spacing:0;margin-bottom:18px}.footer-top p{line-height:1.9}.footer-top>div>a{display:block;line-height:2.2}.footer-brand img{width:200px;margin-bottom:25px}.footer-brand>a{display:inline!important}.footer-top .button{color:white;margin-top:22px;display:inline-flex;font-size:11px}.copyright{max-width:1280px;margin:40px auto 0;padding:20px 0;display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:10px;color:#7d8c9c}.page-intro{padding-block:65px 45px}.page-intro h1{max-width:900px}.page-intro>p:last-child{max-width:740px;color:var(--muted);font-size:16px}.searchbar{padding:22px;background:#f5f9fc;display:flex;gap:20px;align-items:center;margin-bottom:30px;font-size:12px}.searchbar input{flex:1;min-width:100px}.searchbar a{color:var(--blue)}input,select,textarea{border:1px solid #cbdbe7;background:#fff;color:var(--ink);padding:12px 13px;border-radius:3px;min-width:0}input:focus,textarea:focus{border-color:var(--blue)}.catalogue-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-bottom:65px}.catalogue-card{border:1px solid var(--line);transition:transform .2s}.catalogue-card:hover{transform:translateY(-3px)}.catalogue-image{background:#f9fbfd;height:240px;padding:25px}.catalogue-image img{height:100%;width:100%;object-fit:contain;mix-blend-mode:multiply}.catalogue-card h2{font-size:17px;margin:22px 20px;min-height:43px;letter-spacing:-.4px}.card-links{font-size:11px;padding:0 20px 22px;display:flex;flex-direction:column;gap:8px;color:var(--blue)}.breadcrumb{padding-top:28px;font-size:11px;color:#748696}.category-hero{background:linear-gradient(115deg,#f3f9fc,#eaf6fc);margin-top:25px;display:grid;grid-template-columns:1.5fr 1fr;padding:50px;min-height:340px;align-items:center}.category-hero h1{font-size:42px}.category-hero p:not(.eyebrow){color:var(--muted);max-width:650px}.category-hero img{height:250px;width:100%;object-fit:contain;mix-blend-mode:multiply}.mapping-note{font-size:12px;padding-block:25px;color:var(--muted)}.page-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-block:35px 60px;color:var(--blue);font-size:13px}.reader{background:#eef3f7;border:1px solid #d8e3ec;margin-bottom:40px}.reader-top{padding:16px 22px;display:flex;align-items:center;gap:25px;background:#fff;font-size:12px;border-bottom:1px solid var(--line)}.reader-top span{margin-right:auto;color:var(--muted)}.reader-top a{color:var(--blue)}.book-stage{height:650px;overflow:auto;display:flex;justify-content:center;align-items:flex-start;padding:28px;perspective:1600px}.book{display:flex;gap:2px;transform-origin:top center;box-shadow:0 12px 25px #142b4720;max-height:100%;background:white;transition:transform .2s}.book img{height:590px;width:auto;max-width:50%;object-fit:contain;object-position:top}.book img:only-child{max-width:100%}.book.turning{animation:page-turn .35s ease}.reader-controls{display:flex;justify-content:center;gap:15px;padding:16px;align-items:center;border-top:1px solid var(--line);background:white;flex-wrap:wrap}.reader-controls button,.suggestions button{border:1px solid #cbdbe7;background:#f7fbfd;padding:8px 14px;border-radius:3px;font-size:12px}.reader-controls button:disabled{opacity:.35;cursor:default}.page-indicator{font-size:12px;min-width:145px;text-align:center}.thumbnails{padding:20px;display:flex;gap:12px;overflow:auto}.thumbnails[hidden]{display:none}.thumbnails button{min-width:90px;max-width:90px;background:white;border:1px solid #a9bfd2;padding:5px;font-size:10px}.thumbnails img{height:105px;object-fit:contain}.reader:fullscreen{overflow:auto;width:100%;background:#eef3f7}.reader:fullscreen .book-stage{height:80vh}.editorial{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;margin-bottom:75px}.editorial p{color:var(--muted);font-size:14px}.editorial h2{font-size:28px;margin-top:28px}.editorial aside img{max-height:580px;object-fit:contain;margin:auto}.editorial aside>p{font-size:11px;text-align:center;margin-top:12px}.note-box{background:var(--ice);padding:40px;height:fit-content}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-grid article{padding:30px;border:1px solid var(--line);background:#f8fbfd}.service-grid h2{font-size:21px;letter-spacing:-.5px}.service-grid p{font-size:13px;color:var(--muted);margin-bottom:0}.cta{margin-block:45px 70px;padding:35px;background:var(--ice);display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{margin:0;font-size:25px}.blog-card{display:grid;grid-template-columns:1fr 1fr;align-items:center;border:1px solid var(--line);margin-bottom:70px}.blog-card>img{height:330px;object-fit:contain;padding:30px;margin:auto}.blog-card>div{padding:40px}.article{max-width:760px;margin-bottom:70px;color:#566d81}.article h2{font-size:25px;color:var(--ink);margin-top:35px}.article h3{margin-top:40px}.contact-layout{display:grid;grid-template-columns:.85fr 1.5fr;gap:80px;margin-bottom:70px}.contact-details>a{display:block;color:var(--blue);font-size:14px;line-height:2.3}.contact-details h3{font-size:15px;letter-spacing:0;margin-top:35px;margin-bottom:10px}.contact-details p{color:var(--muted);font-size:13px;max-width:290px}.enquiry-form{border:1px solid var(--line);padding:35px;background:#fafcfe}.enquiry-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:500;margin-bottom:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.enquiry-form input,.enquiry-form textarea,.enquiry-form select{width:100%}.enquiry-form .consent{display:flex;flex-direction:row;align-items:center;font-weight:400}.consent input{width:auto}.form-note{font-size:11px;color:var(--muted)}.trap{position:absolute;left:-9999px;opacity:0;width:0!important;height:0}.form-status{font-size:12px;color:var(--blue);margin-top:15px}.assistant{max-width:900px;margin-bottom:80px;border:1px solid var(--line);padding:40px;background:#f8fbfd}.assistant-intro p{color:var(--muted)}.assistant-intro h2{font-size:28px}.suggestions{display:flex;gap:12px;margin-bottom:35px;flex-wrap:wrap}.assistant form label{font-size:12px}.assistant form>div{display:flex;gap:15px;margin-top:10px}.assistant input{flex:1}#assistant-results{margin-top:25px}#assistant-results a{display:block;padding:14px 0;border-bottom:1px solid var(--line);color:var(--blue)}.skip{position:absolute;top:-100px;left:20px;background:white;z-index:100;padding:15px}.skip:focus{top:10px}[hidden]{display:none!important}@keyframes drift{to{transform:translateX(-50%)}}@keyframes page-turn{from{opacity:.35;transform:rotateY(-8deg)}to{opacity:1;transform:rotateY(0)}}
@media(min-width:1600px){.hero-inner{min-height:610px}.hero-copy{padding-top:85px}.hero-art{min-height:610px}.hero-art>img{height:520px}.orb{top:80px}.orb-two{top:132px}}
@media(max-width:1150px){nav{gap:15px;font-size:10px}.brand-note{display:none}.hero h1{font-size:44px}.hero-art>img{left:20%}.art-caption{right:0}.portrait h3{font-size:16px}.footer-top{gap:30px}.catalogue-grid{grid-template-columns:repeat(3,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.utility-contacts{gap:12px;font-size:9px}.utility>div>span:last-child{gap:12px;font-size:9px}.brandrow{height:85px;gap:20px}.logo{width:185px}.brandrow>.button{font-size:10px;padding:10px;gap:10px}.menu{display:block;background:white;border:0;font-size:23px;margin-left:0}nav{display:none;height:auto;flex-direction:column;align-items:stretch;padding:20px 5%;gap:18px}nav.open{display:flex}nav a.current{box-shadow:none}#mega{position:relative;left:0;width:100%;padding:20px 5%;box-shadow:none}.mega-grid{grid-template-columns:1fr 1fr;font-size:11px}.hero-inner{grid-template-columns:1fr 1fr;min-height:480px}.hero-copy{padding-block:45px 65px}.hero h1{font-size:36px;letter-spacing:-1.5px}.hero-copy>.eyebrow{font-size:8px;letter-spacing:1px}.hero-copy>p:not(.eyebrow){font-size:12px}.hero-actions{gap:20px;flex-direction:column;align-items:flex-start}.hero-art{min-height:480px}.hero-art>img{height:360px;width:170px;top:70px;left:30%;}.orb{width:290px;height:290px;left:0;top:110px}.orb-two{width:210px;height:210px;left:40px;top:150px}.art-caption{font-size:9px;top:40px;right:0}.art-caption b{font-size:12px}.art-label{display:none}.hero-bottom{margin-top:28px}.portrait-grid{gap:12px;overflow:auto;grid-template-columns:repeat(5,180px);padding-bottom:10px}.why-grid{grid-template-columns:1fr 1fr}.section-heading h2{font-size:28px}.section-heading>p{display:none}.footer-top{grid-template-columns:1fr 1fr;gap:35px}.copyright{gap:20px}.catalogue-grid{grid-template-columns:repeat(2,1fr)}.searchbar{flex-wrap:wrap}.searchbar label{width:100%}.editorial{gap:30px}.contact-layout{gap:30px;grid-template-columns:1fr}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:5px 20px}.contact-details>.eyebrow,.contact-details>h2{grid-column:1/-1}.contact-details h3{margin-top:15px}.contact-details p{margin-top:15px}.category-hero{padding:30px;grid-template-columns:1.5fr 1fr}.category-hero h1{font-size:32px}.book-stage{height:530px;padding:15px}.book img{height:480px}.reader-top{font-size:10px;gap:12px}.blog-card{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.wrap{width:90%}.utility-contacts>a:nth-of-type(2),.utility i{display:none}.utility>div{justify-content:space-between}.brandrow{gap:9px;height:77px}.logo{width:155px}.brandrow>.button{font-size:9px;padding:8px;gap:6px}.menu{font-size:21px;padding:5px}.hero-inner{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:38px 0 10px}.hero h1{font-size:38px;line-height:1.15;max-width:340px}.hero-copy>p:not(.eyebrow){font-size:13px}.hero-actions{flex-direction:row;gap:20px;align-items:center;margin-top:24px}.hero-actions .button{font-size:11px;padding:12px 14px;gap:13px}.hero-actions .text-link{font-size:11px;gap:10px}.hero-bottom{display:none}.hero-art{min-height:290px}.hero-art>img{height:280px;top:-12px;left:33%;width:160px}.orb{height:230px;width:230px;top:20px;left:16%}.orb-two{height:175px;width:175px;top:47px;left:24%}.art-caption{top:26px;right:0;font-size:8px}.art-caption b{font-size:10px}.art-number{font-size:24px;bottom:26px}.slider-controls{bottom:15px}.featured,.gallery{padding-block:40px}.section-heading{gap:15px;margin-bottom:23px;align-items:end}.section-heading h2{font-size:26px;letter-spacing:-1px}.section-heading .text-link{font-size:10px;gap:6px;flex-shrink:0}.eyebrow{font-size:8px;letter-spacing:1.5px}.portrait-grid{grid-template-columns:repeat(5,155px)}.portrait h3{font-size:15px}.portrait>div{left:12px;right:10px}.why{padding-block:40px}.why-grid{gap:12px}.why-grid article{padding:20px 15px}.why-grid h3{font-size:15px}.why-grid p{font-size:11px}.why-icon{margin-bottom:20px}.footer-top{gap:30px 20px}.footer-top .footer-brand{grid-column:1/-1}.footer-top .footer-brand>p{max-width:280px}.footer-top>div:last-child{grid-column:1/-1}.copyright{font-size:8px;flex-direction:column;gap:5px}.page-intro{padding-block:40px 25px}.page-intro h1{font-size:35px}.page-intro>p:last-child{font-size:14px}.catalogue-grid{gap:12px}.catalogue-image{height:175px;padding:15px}.catalogue-card h2{font-size:14px;margin:15px 12px;min-height:50px}.card-links{padding:0 12px 15px;font-size:10px}.searchbar{padding:15px;gap:12px}.searchbar input{width:100%;flex-basis:100%}.category-hero{padding:25px;display:flex;flex-direction:column;align-items:start}.category-hero h1{font-size:32px}.category-hero img{height:180px;margin-top:25px}.category-hero p:not(.eyebrow){font-size:13px}.reader-top{flex-wrap:wrap;gap:10px 20px;padding:15px}.reader-top span{width:100%}.book-stage{height:490px;padding:14px 8px}.book img{height:450px;max-width:100%}.reader-controls{gap:7px;padding:12px 8px}.reader-controls button{font-size:10px;padding:7px 10px}.page-indicator{font-size:10px;min-width:115px}.page-actions{font-size:11px}.editorial{grid-template-columns:1fr;gap:25px}.editorial h2{font-size:25px}.editorial aside img{max-height:380px}.service-grid{grid-template-columns:1fr;gap:15px}.service-grid article{padding:25px}.cta{flex-direction:column;align-items:start;padding:25px}.cta h2{font-size:23px}.enquiry-form{padding:22px 18px}.form-grid{grid-template-columns:1fr}.contact-details{display:block}.contact-details h3{margin-top:25px}.assistant{padding:25px 20px}.assistant form>div{gap:8px}.assistant .button{font-size:11px;padding:10px;gap:5px}.assistant input{width:0;font-size:12px}.blog-card>div{padding:25px}.blog-card h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.gallery-track{transform:none!important}}
/* Generated category banners and a reader that fits the original page ratio. */
.category-hero.category-banner{position:relative;isolation:isolate;overflow:hidden;min-height:365px;padding:45px;background:#eef7fc;display:block}
.category-banner .category-banner-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center;margin:0;mix-blend-mode:normal}
.category-banner:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f4fafff5 0%,#f4faffc9 38%,transparent 66%)}
.category-banner-copy{max-width:53%}.category-banner-copy h1{font-size:clamp(30px,3.3vw,48px)}.category-banner-copy>p:not(.eyebrow){font-size:13px;max-width:530px}.category-banner-copy .button{font-size:12px;padding:12px 20px}
.reader-intro{margin-block:35px 20px}.reader-intro h2{font-size:25px;margin-bottom:10px}.reader-intro p{font-size:12px;color:var(--muted)}
.catalogue-request{padding:40px;border:1px solid var(--line);background:#f5faff;margin-top:20px;margin-bottom:30px}.catalogue-request h2{font-size:28px}.catalogue-request p:not(.eyebrow){color:var(--muted)}
.reader-instruction{display:flex;justify-content:space-between;gap:15px;padding:10px 20px;font-size:10px;letter-spacing:.2px;color:#536d84;border-bottom:1px solid var(--line)}.fit-label{color:var(--blue);white-space:nowrap}
.book-stage{height:clamp(330px,calc(100svh - 215px),850px);display:block;padding:16px;overflow:auto;touch-action:pan-y;cursor:grab;user-select:none;overscroll-behavior-x:contain}
.book-stage.dragging{cursor:grabbing}.book-stage.is-zoomed{touch-action:none}.book{position:relative;display:flex;gap:2px;max-height:none;max-width:none;margin:0 auto;transform:none;transform-origin:center center;transition:transform .12s;flex-shrink:0}
.book img,.book img:only-child{display:block;max-width:none;max-height:none;object-fit:contain;pointer-events:none;flex:none;user-select:none;-webkit-user-drag:none}
.reader-controls{gap:10px}.reader-controls button{font-size:11px}.reader-controls [aria-pressed=true]{background:var(--blue);color:white}.reader:fullscreen .book-stage{height:calc(100svh - 160px)}
.hero-art{overflow:hidden;background:#eaf5fc}.hero-art>img{inset:0;width:100%;height:100%;object-fit:cover;object-position:82% center;mix-blend-mode:normal;transform:none;filter:none;transition:opacity .35s}.hero-art[data-slide="0"]>img{object-fit:cover;object-position:85% center}.hero-art:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#edf7fc 0%,#edf7fc20 20%,transparent 50%)}.hero-art .art-number{z-index:2;right:18px}.hero-copy{position:relative}.hero-inner{gap:0}.portrait img{width:100%;left:0;height:70%;top:10%;object-fit:cover;object-position:81% center;mix-blend-mode:normal}.catalogue-image{padding:0}.catalogue-image img{object-fit:cover;object-position:82% center;mix-blend-mode:normal}
@media(max-width:800px){.category-hero.category-banner{padding:30px;min-height:330px}.category-banner-copy{max-width:65%}.reader-controls{gap:7px}.hero-art{min-height:480px}.hero-art>img{width:100%;height:100%;inset:0;object-position:85% center}}
@media(max-width:600px){.category-hero.category-banner{min-height:450px;padding:26px;display:flex;align-items:flex-start}.category-banner-copy{max-width:100%}.category-banner-copy h1{font-size:32px;max-width:95%}.category-banner-copy>p:not(.eyebrow){max-width:95%;font-size:12px}.category-banner .category-banner-image{inset:auto 0 0;top:auto;height:52%;width:100%;object-fit:cover;object-position:right center}.category-banner:after{background:linear-gradient(180deg,#f4faff 0%,#f4faff 43%,#f4faff40 65%,transparent 100%)}.category-banner-copy .button{margin-top:0}.book-stage{height:clamp(340px,calc(100svh - 245px),680px);padding:16px}.reader-instruction{font-size:9px;padding:10px 12px}.reader-controls button{font-size:10px;padding:7px 9px}.reader:fullscreen .book-stage{height:calc(100svh - 190px)}.reader-intro h2{font-size:23px}.catalogue-request{padding:27px}.catalogue-request h2{font-size:25px}.hero-art{min-height:290px}.hero-art>img{inset:0;left:0;top:0;width:100%;height:100%;object-fit:cover;object-position:85% center}.hero-art:before{background:linear-gradient(180deg,#edf7fc 0%,transparent 18%)}.hero-art .art-number{bottom:30px}}
.reader:fullscreen{height:100%;display:flex;flex-direction:column}.reader:fullscreen .book-stage{height:auto;min-height:0;flex:1}.reader:fullscreen .reader-top,.reader:fullscreen .reader-instruction,.reader:fullscreen .reader-controls,.reader:fullscreen .thumbnails{flex-shrink:0}
/* Show every banner in full; preserve the source image proportions. */
.hero-art>img,.hero-art[data-slide="0"]>img{object-fit:contain;object-position:center;transform:none}
.hero-art:before{display:none}
.category-hero.category-banner{display:flex;flex-direction:column;padding:0;min-height:0;overflow:visible;background:#f2f8fc}
.category-banner .category-banner-image{position:static;inset:auto;order:2;z-index:auto;display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;margin:0;aspect-ratio:auto}
.category-banner-copy{order:1;max-width:none;width:100%;padding:32px 40px}
.category-banner-copy h1{max-width:none}.category-banner-copy>p:not(.eyebrow){max-width:760px}
.category-banner:after{display:none}
.portrait{aspect-ratio:auto;min-height:0;max-height:none;padding-top:35px;display:flex;flex-direction:column}
.portrait img{position:static;inset:auto;width:100%;height:auto;object-fit:contain;object-position:center;transform:none;aspect-ratio:auto}
.portrait:hover img{transform:none}
.portrait>div{position:static;min-height:90px;padding:18px;align-items:center;flex:1}
.portrait:after{display:none}
.catalogue-image{height:auto;aspect-ratio:auto;padding:0;background:#eef7fc}
.catalogue-image img{width:100%;height:auto;object-fit:contain;object-position:center;aspect-ratio:auto}
@media(max-width:800px){.category-hero.category-banner{padding:0;min-height:0}.category-banner-copy{max-width:none;padding:28px}.hero-art>img{object-fit:contain;object-position:center}}
@media(max-width:600px){.category-hero.category-banner{padding:0;min-height:0;display:flex;align-items:stretch}.category-banner .category-banner-image{position:static;inset:auto;width:100%;height:auto;object-fit:contain;object-position:center}.category-banner-copy{max-width:none;padding:25px}.category-banner-copy h1,.category-banner-copy>p:not(.eyebrow){max-width:none}.hero-art>img{object-fit:contain;object-position:center}.portrait>div{min-height:85px;padding:15px}.catalogue-image{height:auto;padding:0}.catalogue-image img{height:auto}}
/* Full-width, viewport-height homepage slideshow. */
.home-page .hero{width:100%;min-height:calc(100svh - 197px);background:#eef7fc}
.home-page .hero-inner.wrap{width:100%;max-width:none;min-height:calc(100svh - 197px);display:flex;align-items:center;position:relative}
.home-page .hero-copy{width:min(1280px,90%);margin-inline:auto;padding:56px 0 80px;position:relative;z-index:2}
.home-page .hero-copy h1{max-width:650px}.home-page .hero-copy>p:not(.eyebrow){max-width:500px}
.home-page .hero-art{position:absolute;inset:0;width:100%;height:100%;min-height:0;background:transparent;overflow:visible}
.home-page .hero-art>img,.home-page .hero-art[data-slide="0"]>img{position:absolute;inset:0;max-width:none;width:100%;height:100%;object-fit:contain;object-position:right center;transform:none;filter:none}
.home-page .hero-art .art-number{right:5%;bottom:25px}
.home-page .hero-bottom{margin-top:35px}
.home-page .slider-controls{z-index:3}
@media(max-width:1150px) and (min-width:801px){.home-page .hero-copy h1{max-width:530px;font-size:42px}.home-page .hero-copy>p:not(.eyebrow){max-width:410px}}
@media(max-width:800px){.home-page .hero,.home-page .hero-inner.wrap{min-height:calc(100svh - 115px)}.home-page .hero-copy{padding:40px 0 75px}.home-page .hero-copy h1{max-width:460px}.home-page .hero-copy>p:not(.eyebrow){max-width:360px}.home-page .hero-art{min-height:0}}
@media(max-width:600px){.home-page .hero,.home-page .hero-inner.wrap{min-height:calc(100svh - 107px)}.home-page .hero-inner.wrap{align-items:stretch}.home-page .hero-copy{padding:28px 0 45svh}.home-page .hero-copy h1{font-size:clamp(30px,8vw,38px);max-width:100%}.home-page .hero-copy>p:not(.eyebrow){max-width:100%}.home-page .hero-art>img,.home-page .hero-art[data-slide="0"]>img{inset:auto 0 55px;top:auto;width:100%;height:40svh;object-fit:contain;object-position:center bottom}.home-page .hero-bottom{display:none}.home-page .hero-art .art-number{bottom:18px;font-size:22px}.home-page .slider-controls{bottom:18px}}
.home-page .hero{min-height:0}.home-page .hero-inner.wrap{height:calc(100svh - 197px);min-height:0}
@media(max-width:800px){.home-page .hero-inner.wrap{height:calc(100svh - 115px);min-height:0}}
@media(max-width:600px){.home-page .hero-inner.wrap{height:calc(100svh - 107px);min-height:0}.home-page .hero-copy{padding:28px 0 0;align-self:flex-start}}
@media(max-width:600px) and (max-height:700px){.home-page .hero-copy{padding-top:18px}.home-page .hero-copy .eyebrow{margin-bottom:12px}.home-page .hero-copy h1{font-size:30px;margin-bottom:12px}.home-page .hero-copy>p:not(.eyebrow){font-size:11px;margin-bottom:12px}.home-page .hero-actions{margin-top:14px}.home-page .hero-art>img,.home-page .hero-art[data-slide="0"]>img{height:29svh}}
/* Editorial pages: full, uncropped images and substantial readable content. */
.story-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px;padding-block:60px 35px}.story-hero h1{font-size:clamp(34px,3.8vw,53px)}.story-hero>div>p:last-child{color:var(--muted);font-size:15px;max-width:610px}.story-hero figure{margin:0;background:#f4f9fc;border:1px solid var(--line)}.story-hero img{width:100%;height:auto;object-fit:contain}.story-hero figcaption{padding:9px 14px;color:#71849a;font-size:10px;background:#f8fbfd}.story-section{padding-block:35px}.story-section>h2{font-size:30px}.section-lead{max-width:900px;color:var(--muted);font-size:14px;margin-bottom:28px}.document-grid,.event-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.document-grid article,.event-grid article,.information-grid article{border:1px solid var(--line);padding:30px;background:#f8fbfd}.document-grid h3,.event-grid h3{font-size:23px;letter-spacing:-.6px}.document-grid p:not(.eyebrow),.event-grid p:not(.eyebrow),.information-grid p{color:var(--muted);font-size:13px}.information-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.information-grid article{background:white}.information-grid h3{font-size:20px}.steps-section,.meeting-list{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-block:1px solid var(--line);margin-block:25px}.steps-section ol{margin:0;padding-left:22px}.steps-section li{padding:0 0 22px 10px;color:var(--blue)}.steps-section li b,.steps-section li span{display:block}.steps-section li b{font-size:15px;color:var(--ink)}.steps-section li span{font-size:13px;color:var(--muted);margin-top:8px}.meeting-list p{color:var(--muted);font-size:14px}.meeting-list h3{margin-top:20px}.story-faq{border-top:1px solid var(--line)}.story-faq details{padding:20px 0;border-bottom:1px solid var(--line)}.story-faq summary{cursor:pointer;font-size:15px;font-weight:600}.story-faq details p{color:var(--muted);font-size:13px;max-width:850px;margin:15px 0 0}.story-cta{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:35px;background:var(--ice);margin-block:30px 65px}.story-cta h2{font-size:27px;margin-bottom:12px}.story-cta p{font-size:13px;color:var(--muted);margin:0}.story-cta .button{flex-shrink:0}.story-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.story-card{border:1px solid var(--line);background:white;transition:transform .2s}.story-card:hover{transform:translateY(-4px)}.story-card img{width:100%;height:auto;object-fit:contain}.story-card a>div{padding:25px}.story-card h2{font-size:23px;line-height:1.3;letter-spacing:-.6px}.story-card p:not(.eyebrow){font-size:13px;color:var(--muted)}.story-card .eyebrow{font-size:8px;letter-spacing:1.2px}.reading-article{max-width:820px;margin-block:20px 65px}.reading-article section{padding-block:12px}.reading-article h2{font-size:27px;margin-bottom:15px}.reading-article section p{color:#596e82;font-size:15px;line-height:1.9}.article-meta{color:#7c8b9c;font-size:11px;padding-bottom:20px;border-bottom:1px solid var(--line)}.article-next{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:30px;margin-top:20px;border-top:1px solid var(--line);font-size:13px}
@media(max-width:950px){.story-hero{gap:30px}.story-card-grid{grid-template-columns:repeat(2,1fr)}.information-grid{grid-template-columns:1fr}.story-cta{align-items:start;flex-direction:column}}
@media(max-width:650px){.story-hero{grid-template-columns:1fr;padding-block:35px 20px;gap:20px}.story-hero h1{font-size:35px}.story-hero>div>p:last-child{font-size:13px}.story-hero figure{width:100%}.story-section{padding-block:25px}.document-grid,.event-grid,.steps-section,.meeting-list,.story-card-grid{grid-template-columns:1fr;gap:18px}.document-grid article,.event-grid article,.information-grid article{padding:25px}.steps-section,.meeting-list{gap:20px}.story-cta{padding:25px;margin-bottom:45px}.story-cta h2{font-size:24px}.story-card a>div{padding:22px}.reading-article h2{font-size:24px}.reading-article section p{font-size:14px}.article-next{align-items:start;flex-direction:column}}
/* Fill the complete homepage banner, including its full height on mobile. */
.home-page .hero-art{inset:0;width:100%;height:100%;min-height:0;overflow:hidden}
.home-page .hero-art>img,.home-page .hero-art[data-slide]>img{position:absolute;inset:0;top:0;left:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:right center;transform:none}
.home-page .hero-art:before{display:block;content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(244,249,252,.97) 0%,rgba(244,249,252,.9) 28%,rgba(244,249,252,.3) 53%,transparent 72%)}
@media(max-width:800px){.home-page .hero-art>img,.home-page .hero-art[data-slide]>img{inset:0;width:100%;height:100%;object-fit:cover;object-position:80% center}}
@media(max-width:600px){.home-page .hero-art>img,.home-page .hero-art[data-slide]>img{inset:0;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:80% center}.home-page .hero-art:before{background:linear-gradient(180deg,rgba(244,249,252,.98) 0%,rgba(244,249,252,.91) 33%,rgba(244,249,252,.28) 62%,transparent 85%)}}
/* Clear shared navigation, text-only catalogue index, and contact shortcuts. */
header .brandrow{height:100px;gap:24px}header .logo{width:225px;height:auto;object-fit:contain}.brand-note{padding-left:24px}.brandrow>.button{white-space:nowrap}header nav{height:56px;gap:clamp(12px,1.8vw,27px);padding-inline:5%;font-size:12px}header nav a{white-space:nowrap}.mobile-quote{display:none}
.catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.catalogue-card{padding:24px;background:#f9fcfe;display:flex;flex-direction:column;min-width:0;border-radius:4px}.catalogue-card h2{margin:0 0 22px;min-height:44px;font-size:19px;line-height:1.35}.catalogue-card .card-links{margin-top:auto;padding:0;gap:12px;flex-direction:row;flex-wrap:wrap;font-size:12px}.catalogue-card .card-links a{border-bottom:1px solid #c9deec;padding-bottom:3px}.searchbar{flex-wrap:wrap}.searchbar input{min-width:180px}.searchbar #count{white-space:nowrap}
footer{padding-bottom:0}.footer-top{grid-template-columns:1.1fr .8fr 1.05fr 1.15fr;gap:40px;font-size:12px}.footer-brand>a{display:block!important}.footer-brand img{width:210px;height:auto;object-fit:contain;margin-bottom:20px}.footer-social{display:flex;gap:18px;flex-wrap:wrap}.footer-top h3{font-size:14px;line-height:1.5;margin-bottom:13px}.footer-top address{font-style:normal;line-height:1.9;margin-bottom:28px}.footer-top>div>a{overflow-wrap:anywhere;line-height:2}.footer-top .button{overflow-wrap:normal;display:inline-flex;line-height:1.5;padding:13px 18px;font-size:12px}.copyright{font-size:11px;gap:20px}.quick-actions{position:fixed;right:22px;bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;flex-direction:column;gap:12px;align-items:center}.quick-action{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid #ffffff70;box-shadow:0 5px 18px #08244826;padding:0;transition:transform .2s,background .2s}.quick-action:hover{transform:translateY(-3px)}.whatsapp-action{background:#14863d;color:white}.whatsapp-action:hover{background:#106e31}.back-to-top{background:var(--navy);color:white}.quick-action[hidden]{display:none!important}
.home-page .hero-inner.wrap{height:max(420px,calc(100svh - var(--site-header-height,197px)));min-height:0}
@media(max-width:1050px){.brand-note{display:none}.footer-top{gap:28px}.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}header nav{gap:14px;font-size:11px}}
@media(max-width:800px){header .brandrow{height:82px;gap:15px}header .logo{width:195px}header nav{display:none;height:auto;gap:0;padding:10px 5% 20px;font-size:14px;align-items:stretch}header nav.open{display:flex}header nav a{padding:10px 0;border-bottom:1px solid var(--line)}header nav a.current{box-shadow:none}header nav .mobile-quote{display:inline-flex;align-self:flex-start;border:1px solid var(--blue);padding:11px 18px;margin-top:15px}.menu{margin-left:0;width:36px;flex-shrink:0}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top .footer-brand{grid-column:auto}.footer-top>div:last-child{grid-column:auto}.copyright{flex-wrap:wrap}.quick-actions{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}}
@media(max-width:520px){header .brandrow{height:76px;justify-content:space-between}header .logo{width:190px}.brandrow>.button{display:none}.menu{margin-left:auto}.catalogue-grid{grid-template-columns:1fr;gap:14px}.catalogue-card{padding:23px}.catalogue-card h2{min-height:0;font-size:19px}.catalogue-card .card-links{gap:18px}.searchbar input{width:100%;min-width:0}.footer-top{grid-template-columns:1fr;gap:28px}.footer-top .footer-brand,.footer-top>div:last-child{grid-column:auto}.footer-top>div{min-width:0}.footer-brand img{width:200px}.footer-top>div:nth-child(2){display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}.footer-top>div:nth-child(2)>h3{grid-column:1/-1}.copyright{flex-direction:column;padding-right:55px;font-size:10px;gap:8px}.quick-action{width:48px;height:48px}.quick-actions{gap:10px;right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px))}}
@media print{.quick-actions{display:none}}

/* Navigation dropdown */
.nav-dropdown{position:relative;display:inline-flex;align-items:center;height:100%}
.dropdown-toggle{background:transparent;border:0;font:inherit;font-size:12px;font-weight:500;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:0;height:100%;transition:color .2s}
.dropdown-toggle:hover,.nav-dropdown:hover .dropdown-toggle,.nav-dropdown.open .dropdown-toggle{color:var(--blue)}
.nav-plus{display:inline-block;font-size:14px;font-weight:600;color:var(--blue);transition:transform .2s;line-height:1}
.nav-dropdown:hover .nav-plus,.nav-dropdown.open .nav-plus{transform:rotate(45deg)}
.dropdown-menu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);background:#ffffff;min-width:215px;box-shadow:0 10px 30px rgba(8,36,72,.15);border:1px solid var(--line);border-radius:4px;padding:6px 0;z-index:100}
.dropdown-menu::before{content:'';position:absolute;top:-6px;left:50%;transform:translateX(-50%) rotate(45deg);width:10px;height:10px;background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line)}
.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu,.nav-dropdown.open .dropdown-menu{display:block}
.dropdown-menu a{display:block;padding:9px 18px;font-size:12px;font-weight:500;color:var(--ink);text-decoration:none;white-space:nowrap;transition:background .15s,color .15s;text-align:left}
.dropdown-menu a:hover{background:var(--ice);color:var(--blue);box-shadow:none}
@media(max-width:800px){
  .nav-dropdown{flex-direction:column;align-items:stretch;width:100%;height:auto}
  .dropdown-toggle{justify-content:space-between;width:100%;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
  .dropdown-menu{position:static;display:none;box-shadow:none;border:0;border-radius:0;padding:4px 0 8px 14px;background:transparent;transform:none}
  .dropdown-menu::before{display:none}
  .nav-dropdown.open .dropdown-menu{display:block}
  .dropdown-menu a{padding:8px 0;border-bottom:1px dashed var(--line);font-size:13px}
}
/* Stoma-inspired 3D Realistic Flipbook */
.reader.flipbook-mode{
  background: radial-gradient(circle at 50% 35%, #edf1f5 0%, #dbe0e6 65%, #c8cfd8 100%);
  border: 1px solid #b8c2cd;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 15px 45px rgba(8,36,72,0.14), inset 0 1px 3px rgba(255,255,255,0.8);
  position: relative;
  margin-bottom: 50px;
}
.reader-top-stoma{
  background: #ffffff;
  border-bottom: 1px solid #d5dee6;
  padding: 12px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 13px;
  color: var(--ink);
  flex-wrap: wrap;
  gap: 10px;
}
.reader-top-stoma .reader-brand{
  font-weight: 700;
  color: var(--navy);
  letter-spacing: .3px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.reader-top-stoma .reader-brand span{
  background: #dc2626;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  padding: 2px 6px;
  border-radius: 2px;
  letter-spacing: .5px;
}
.reader-top-stoma .reader-page-info{
  background: #eef4f8;
  padding: 4px 14px;
  border-radius: 20px;
  font-weight: 600;
  color: var(--blue);
  font-size: 12px;
  border: 1px solid #d0dfea;
}
.reader-top-stoma .reader-top-actions{
  display: flex;
  align-items: center;
  gap: 10px;
}
.btn-stoma-top{
  background: #f1f5f9;
  border: 1px solid #cbd5e1;
  color: var(--ink);
  padding: 6px 12px;
  border-radius: 4px;
  font-size: 11.5px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: all .15s;
}
.btn-stoma-top:hover{
  background: var(--blue);
  color: #fff;
  border-color: var(--blue);
}

.flipbook-stage-wrap{
  position: relative;
  width: 100%;
}
.floating-arrow{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 25;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid #cbd5e1;
  color: var(--navy);
  font-size: 24px;
  line-height: 1;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
  transition: all .2s ease;
}
.floating-arrow:hover:not(:disabled){
  background: var(--navy);
  color: #fff;
  border-color: var(--navy);
  transform: translateY(-50%) scale(1.08);
}
.floating-arrow:disabled{
  opacity: .2;
  cursor: default;
}
.floating-arrow.prev-arrow{ left: 16px; }
.floating-arrow.next-arrow{ right: 16px; }

/* 3D Realistic Book with Spine and Shadows */
.reader.flipbook-mode .book{
  border-radius: 3px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.28), 0 6px 18px rgba(0,0,0,0.15), -10px 0 20px rgba(0,0,0,0.06), 10px 0 20px rgba(0,0,0,0.06);
  background: #ffffff;
  position: relative;
  isolation: isolate;
}
/* Central 3D spine shadow */
.reader.flipbook-mode .book::after{
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 38px;
  transform: translateX(-50%);
  background: linear-gradient(to right, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.06) 22%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.06) 78%, rgba(0,0,0,0.2) 100%);
  pointer-events: none;
  z-index: 10;
}
.reader.flipbook-mode .book img:first-child{
  box-shadow: inset -6px 0 15px rgba(0,0,0,0.06);
  border-right: 1px solid #e2e8f0;
}
.reader.flipbook-mode .book img:last-child{
  box-shadow: inset 6px 0 15px rgba(0,0,0,0.06);
}

.reader-controls-stoma{
  background: #ffffff;
  border-top: 1px solid #d5dee6;
  padding: 10px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
}
.reader-controls-stoma button{
  background: #f1f5f9;
  border: 1px solid #cbd5e1;
  color: var(--ink);
  padding: 7px 13px;
  border-radius: 4px;
  font-size: 11.5px;
  font-weight: 550;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  transition: all .15s;
}
.reader-controls-stoma button:hover:not(:disabled){
  background: var(--blue);
  color: #fff;
  border-color: var(--blue);
}
.reader-controls-stoma button[aria-pressed=true]{
  background: var(--navy);
  color: #fff;
  border-color: var(--navy);
}

/* Stoma Products Page styling */
.products-hero{margin-bottom:35px}
.products-hero-banner{position:relative;border-radius:6px;overflow:hidden;background:#eef7fc;margin-bottom:30px;min-height:280px;display:flex;align-items:center}
.products-hero-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:1}
.products-hero-banner::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,36,72,0.9) 0%,rgba(8,36,72,0.72) 48%,rgba(8,36,72,0.2) 100%);z-index:2}
.products-hero-copy{position:relative;z-index:3;color:#fff;padding:45px;max-width:620px}
.products-hero-copy .eyebrow{color:var(--cyan);margin-bottom:10px}
.products-hero-copy h1{font-size:clamp(28px,3.2vw,44px);color:#fff;margin-bottom:14px;letter-spacing:-1px}
.products-hero-copy p{color:#dce7f3;font-size:14px;line-height:1.7;margin:0}

.products-intro-text{margin-bottom:35px;max-width:920px}
.products-intro-text p{font-size:15px;line-height:1.8;color:#55697d;margin-bottom:15px}
.products-intro-text h2{font-size:24px;margin-top:25px;margin-bottom:12px;color:var(--navy)}

.catalogue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:60px}
@media(max-width:1050px){.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.catalogue-grid{grid-template-columns:1fr}}

.catalogue-card{background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 3px 12px rgba(8,36,72,0.04);transition:transform .2s,box-shadow .2s}
.catalogue-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(8,36,72,0.12);border-color:#b4cee0}

.card-header{padding:18px 20px 12px}
.card-header h2{font-size:17px;margin:0;line-height:1.3;font-weight:650;color:var(--navy)}
.card-header .card-category-tag{font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:var(--blue)}

.card-image-wrap{position:relative;background:#f2f7fb;height:180px;overflow:hidden;border-block:1px solid var(--line)}
.card-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .3s ease}
.catalogue-card:hover .card-image-wrap img{transform:scale(1.04)}
.card-badge{position:absolute;bottom:10px;left:12px;background:rgba(8,36,72,0.85);color:#fff;font-size:9.5px;padding:3px 8px;border-radius:3px;backdrop-filter:blur(4px);letter-spacing:.3px}

.card-body{padding:16px 20px;flex-grow:1;display:flex;flex-direction:column}
.card-desc{font-size:12.5px;line-height:1.65;color:#5c7083;margin-bottom:14px}
.card-details-list{list-style:none;padding:0;margin:0 0 16px;font-size:11.5px;color:#495c6e}
.card-details-list li{position:relative;padding-left:14px;margin-bottom:4px}
.card-details-list li::before{content:'•';position:absolute;left:0;color:var(--cyan);font-weight:bold}

.card-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.btn-view-catalog{background:var(--blue);color:#fff;padding:8px 14px;border-radius:3px;font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;gap:6px;transition:background .2s}
.btn-view-catalog:hover{background:var(--navy);color:#fff}
.btn-secondary-link{font-size:11.5px;color:var(--blue);font-weight:550;display:inline-flex;align-items:center;gap:4px}
.btn-secondary-link:hover{text-decoration:underline}

/* Index Table of Contents */
.catalogue-index-section{
  margin-top: 55px;
  margin-bottom: 60px;
}
.catalogue-index-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
@media(max-width: 990px){
  .catalogue-index-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media(max-width: 600px){
  .catalogue-index-grid{ grid-template-columns: 1fr; }
}
.cat-index-item{
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 16px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  cursor: pointer;
  transition: all .2s ease;
  box-shadow: 0 2px 6px rgba(8,36,72,0.04);
}
.cat-index-item:hover{
  border-color: var(--blue);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(8,36,72,0.1);
  background: #f8fbfe;
}
.cat-index-left{
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}
.cat-index-num{
  font-family: monospace;
  font-size: 15px;
  font-weight: 700;
  color: var(--blue);
  background: #eaf3fa;
  width: 36px;
  height: 36px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.cat-index-name{
  font-size: 13px;
  font-weight: 650;
  color: var(--navy);
  line-height: 1.3;
}
.cat-index-badge{
  font-size: 11px;
  font-weight: 600;
  color: #3b82f6;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  padding: 4px 10px;
  border-radius: 14px;
  white-space: nowrap;
  flex-shrink: 0;
}

/* Service Feature Boxes: Free Shipping, 24/7 Support, Online Payment */
.why-services{
  padding-block: 70px;
  background: #fbfdff;
  border-block: 1px solid var(--line);
}
.services-boxes-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-bottom: 70px;
}
@media(max-width: 820px){
  .services-boxes-grid{ grid-template-columns: 1fr; gap: 16px; margin-bottom: 45px; }
}
.service-feature-box{
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 28px 24px;
  display: flex;
  align-items: flex-start;
  gap: 18px;
  box-shadow: 0 4px 15px rgba(8,36,72,0.04);
  transition: transform .2s, box-shadow .2s, border-color .2s;
}
.service-feature-box:hover{
  transform: translateY(-3px);
  border-color: #b3cfe3;
  box-shadow: 0 10px 25px rgba(8,36,72,0.09);
}
.feature-icon-wrap{
  background: #eaf4fb;
  color: var(--blue);
  width: 56px;
  height: 56px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border: 1px solid #d4e7f5;
  transition: background .2s, color .2s;
}
.service-feature-box:hover .feature-icon-wrap{
  background: var(--blue);
  color: #ffffff;
}
.feature-content h3{
  font-size: 18px;
  margin: 0 0 6px;
  color: var(--navy);
  font-weight: 700;
}
.feature-content p{
  font-size: 13px;
  line-height: 1.6;
  color: #5c7083;
  margin: 0;
}

/* Welcome to MR SHAH CO & About Us layout */
.welcome-about-wrap{
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 55px;
  align-items: center;
}
@media(max-width: 920px){
  .welcome-about-wrap{ grid-template-columns: 1fr; gap: 35px; }
}
.welcome-about-copy h2{
  font-size: clamp(28px, 3.2vw, 42px);
  margin-bottom: 16px;
  color: var(--navy);
  letter-spacing: -1px;
}
.welcome-about-copy .lead-text{
  font-size: 16px;
  line-height: 1.7;
  color: var(--blue);
  font-weight: 500;
  margin-bottom: 16px;
}
.welcome-about-copy p{
  font-size: 14px;
  line-height: 1.8;
  color: #55687b;
  margin-bottom: 15px;
}
.about-highlights{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 20px;
  margin: 24px 0 30px;
}
@media(max-width: 520px){
  .about-highlights{ grid-template-columns: 1fr; }
}
.highlight-item{
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--navy);
}
.highlight-check{
  color: var(--blue);
  font-weight: bold;
}
.welcome-about-actions{
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.welcome-about-art .art-card{
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 16px 40px rgba(8,36,72,0.12);
  border: 1px solid var(--line);
  background: #fff;
}
.welcome-about-art img{
  width: 100%;
  height: 440px;
  object-fit: cover;
  object-position: center;
  display: block;
}
.welcome-about-art .art-badge{
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
  background: rgba(8,36,72,0.92);
  backdrop-filter: blur(8px);
  color: #fff;
  padding: 16px 20px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  gap: 18px;
  border: 1px solid rgba(255,255,255,0.15);
}
.welcome-about-art .badge-num{
  font-family: Manrope, Arial, sans-serif;
  font-size: 32px;
  font-weight: 800;
  color: var(--cyan);
  line-height: 1;
}
.welcome-about-art .badge-label{
  font-size: 12px;
  line-height: 1.5;
  color: #dce7f3;
  font-weight: 500;
}


/* Product category card clickable styling */
.card-title-link{color:inherit;text-decoration:none;display:block;transition:color .2s ease}
.catalogue-card:hover .card-title-link,.card-title-link:hover{color:var(--blue)}
a.card-image-wrap{display:block;cursor:pointer;text-decoration:none}
.catalogue-card{cursor:pointer}


/* Clean Featured Categories (Our Categories) styling */
.portrait-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 18px;
  align-items: stretch;
}
.portrait {
  display: block;
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--line);
  background: #fff;
  padding: 0 !important;
  box-shadow: 0 4px 14px rgba(8, 36, 72, 0.06);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  aspect-ratio: auto;
  cursor: pointer;
}
.portrait:hover {
  transform: translateY(-6px);
  box-shadow: 0 14px 28px rgba(8, 36, 72, 0.15);
  border-color: var(--cyan);
}
.portrait img {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 7px;
  transition: transform 0.35s ease;
}
.portrait:hover img {
  transform: scale(1.025) !important;
}
@media (max-width: 900px) {
  .portrait-grid {
    grid-template-columns: repeat(5, 180px);
    overflow-x: auto;
    padding-bottom: 12px;
    scroll-snap-type: x mandatory;
  }
  .portrait {
    scroll-snap-align: start;
  }
}


/* Hero Showcase with Auto-Zoom and Centered Details */
.hero.hero-showcase {
  position: relative;
  min-height: 580px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #082448;
}
.hero-showcase-media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1;
}
.hero-zoom-banner {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform-origin: center center;
  animation: heroKenBurns 18s ease-in-out infinite alternate;
  will-change: transform;
}
@keyframes heroKenBurns {
  0% {
    transform: scale(1.0);
  }
  50% {
    transform: scale(1.10);
  }
  100% {
    transform: scale(1.02);
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero-zoom-banner {
    animation: none !important;
  }
}
.hero-showcase-overlay {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, rgba(8, 36, 72, 0.42) 0%, rgba(8, 36, 72, 0.70) 75%, rgba(8, 36, 72, 0.88) 100%),
              linear-gradient(to bottom, rgba(8, 36, 72, 0.45) 0%, rgba(8, 36, 72, 0.22) 50%, rgba(8, 36, 72, 0.72) 100%);
  pointer-events: none;
}
.hero-showcase-content {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 860px;
  margin: 0 auto;
  padding: 60px 20px;
  color: #fff;
}
.hero-showcase-content .eyebrow {
  color: #5ed4fa;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.5px;
  margin-bottom: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.hero-showcase-content .eyebrow .line {
  background: #5ed4fa;
}
.hero-showcase-content h1 {
  font-size: clamp(34px, 4.4vw, 56px);
  line-height: 1.18;
  letter-spacing: -1.2px;
  color: #ffffff;
  margin: 0 auto 18px;
  font-weight: 700;
  text-shadow: 0 3px 18px rgba(0, 0, 0, 0.45);
}
.hero-showcase-content h1 em {
  font-style: normal;
  color: #6edaff;
  display: block;
}
.hero-showcase-content .hero-sub {
  font-size: clamp(14px, 1.4vw, 17px);
  line-height: 1.8;
  color: #e2f1fc;
  max-width: 680px;
  margin: 0 auto 28px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
}
.hero-showcase-content .hero-actions {
  display: flex;
  gap: 16px;
  justify-content: center;
  align-items: center;
  margin-bottom: 32px;
  flex-wrap: wrap;
}
.hero-showcase-content .button {
  background: var(--blue);
  color: #fff;
  font-weight: 600;
  padding: 14px 26px;
  border-radius: 4px;
  box-shadow: 0 4px 14px rgba(7, 95, 181, 0.4);
  transition: transform .2s ease, background .2s ease;
}
.hero-showcase-content .button:hover {
  background: #0077e6;
  transform: translateY(-2px);
}
.hero-showcase-content .button-outline {
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.65);
  color: #fff;
  backdrop-filter: blur(8px);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
}
.hero-showcase-content .button-outline:hover {
  background: #fff;
  color: var(--navy);
  border-color: #fff;
}
.hero-bottom-badges {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  font-size: 11.5px;
  letter-spacing: 0.4px;
  color: #cde7f8;
}
.hero-bottom-badges .badge-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(8, 36, 72, 0.6);
  backdrop-filter: blur(6px);
  padding: 6px 14px;
  border-radius: 20px;
  border: 1px solid rgba(110, 218, 255, 0.28);
}
.hero-bottom-badges .badge-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #16a9d5;
  display: inline-block;
}
