:root{--blue:#0b2a4a;--blue-2:#174a78;--indigo:#123d68;--paper:#f8f5ee;--sand:#e9e1d2;--ink:#17212b;--muted:#65717b;--white:#fff;--line:rgba(11,42,74,.16);--shadow:0 18px 50px rgba(11,42,74,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"Segoe UI",Arial,sans-serif;line-height:1.65}body.no-scroll{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}button,input,textarea,select{font:inherit}.container{width:min(1180px,calc(100% - 40px));margin:0 auto}.narrow{max-width:820px}.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}.skip-link{position:fixed;left:16px;top:-80px;background:#fff;padding:10px 16px;z-index:999}.skip-link:focus{top:16px}.site-header{position:relative;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line)}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--blue)}.brand-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--blue);font-family:Georgia,serif;font-size:15px;letter-spacing:.06em}.brand strong,.brand small{display:block}.brand strong{font-family:Georgia,serif;font-size:19px}.brand small{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.main-nav{display:flex;align-items:center;gap:28px}.main-nav a{text-decoration:none;font-size:14px;font-weight:700;letter-spacing:.05em;color:#485560;position:relative;padding:32px 0}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:21px;height:2px;background:var(--blue-2);transition:right .2s}.main-nav a:hover:after,.main-nav a.active:after{right:0}.main-nav a.active{color:var(--blue)}.nav-toggle{display:none;border:0;background:none;width:48px;height:48px;padding:12px}.nav-toggle span:not(.sr-only){display:block;height:2px;background:var(--blue);margin:5px 0}.hero{background:var(--paper);overflow:hidden}.hero-grid{min-height:670px;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:7vw}.hero-copy{padding:80px 0}.eyebrow{margin:0 0 12px;color:var(--blue-2);font-weight:800;text-transform:uppercase;letter-spacing:.17em;font-size:12px}.hero h1,.page-hero h1{font-family:Georgia,serif;color:var(--blue);font-weight:400;line-height:1.05;margin:0 0 26px;font-size:clamp(48px,6.3vw,88px)}.lead{font-size:clamp(18px,2vw,22px);color:#3f4d59;max-width:680px}.button-row{display:flex;align-items:center;gap:26px;margin-top:36px}.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;background:var(--blue);color:#fff;text-decoration:none;padding:12px 24px;border:1px solid var(--blue);font-weight:700;letter-spacing:.035em;transition:.2s}.button:hover{background:var(--blue-2);border-color:var(--blue-2);transform:translateY(-2px)}.button-small{min-height:42px;padding:8px 17px;font-size:14px}.button-light{background:#fff;color:var(--blue);border-color:#fff}.text-link{text-decoration:none;color:var(--blue);font-weight:750;border-bottom:1px solid rgba(11,42,74,.35);padding-bottom:3px}.text-link span{display:inline-block;transition:transform .2s}.text-link:hover span{transform:translateX(4px)}.hero-art{min-height:530px;display:grid;place-items:center;background-color:var(--blue);background-image:radial-gradient(circle at 25px 25px,transparent 0 9px,rgba(255,255,255,.15) 10px 11px,transparent 12px),radial-gradient(circle at 0 0,rgba(255,255,255,.12) 0 4px,transparent 5px);background-size:50px 50px;transform:rotate(2deg);box-shadow:var(--shadow)}.pattern-card{width:72%;aspect-ratio:4/5;background:rgba(248,245,238,.95);padding:38px;display:flex;flex-direction:column;justify-content:center;text-align:center;color:var(--blue);transform:rotate(-4deg);box-shadow:0 18px 60px rgba(0,0,0,.24);border:10px double var(--blue)}.pattern-card span,.pattern-card small{text-transform:uppercase;letter-spacing:.2em}.pattern-card strong{font-family:Georgia,serif;font-size:clamp(26px,4vw,48px);margin:14px 0}.section{padding:105px 0}.section-soft{background:var(--paper)}.split-copy{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.split-copy h2,.section-heading h2,.callout h2,.story-item h2{font-family:Georgia,serif;color:var(--blue);font-weight:400;font-size:clamp(34px,4vw,52px);line-height:1.16;margin:0 0 22px}.split-copy p:not(.eyebrow){font-size:19px;color:#53606b}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:44px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.product-card{background:#fff;box-shadow:0 8px 30px rgba(11,42,74,.08);min-width:0}.product-image{display:block;aspect-ratio:4/3;background:#e6edf1;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.product-card:hover .product-image img{transform:scale(1.035)}.image-placeholder{width:100%;height:100%;display:grid;place-items:center;background-color:var(--indigo);background-image:radial-gradient(circle at center,transparent 0 15px,rgba(255,255,255,.13) 16px 18px,transparent 19px);background-size:62px 62px;color:#fff}.image-placeholder span{font-family:Georgia,serif;border:1px solid rgba(255,255,255,.55);padding:10px 12px}.product-body{padding:24px}.product-body h2,.product-body h3{font-family:Georgia,serif;color:var(--blue);font-size:24px;font-weight:400;margin:0 0 10px}.product-body p{margin:0;color:var(--muted)}.category-label{font-size:11px!important;color:var(--blue-2)!important;letter-spacing:.15em;text-transform:uppercase;font-weight:800;margin-bottom:7px!important}.empty-state{padding:50px;text-align:center;background:#fff;border:1px solid var(--line)}.callout{background:var(--blue);color:#fff}.callout-inner{display:grid;grid-template-columns:1.1fr 1fr auto;align-items:center;gap:50px}.callout .eyebrow{color:#a9c7df}.callout h2{color:#fff;margin:0}.callout p{font-size:18px}.page-hero{padding:115px 0 90px;background:var(--paper);position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:340px;height:340px;border:80px double rgba(23,74,120,.07);border-radius:50%;right:-80px;top:-110px}.page-hero-compact{padding:85px 0 70px}.story-list{max-width:980px}.story-item{display:grid;grid-template-columns:110px 1fr;gap:35px;padding:58px 0;border-bottom:1px solid var(--line)}.story-item:first-child{padding-top:0}.story-number{font-family:Georgia,serif;color:#b4c3cf;font-size:46px}.story-item p:not(.eyebrow){font-size:18px;color:#51606c}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:38px}.filter{min-height:44px;border:1px solid var(--line);background:#fff;color:var(--blue);padding:8px 18px;cursor:pointer;font-weight:700}.filter:hover,.filter.active{color:#fff;background:var(--blue);border-color:var(--blue)}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-item.is-hidden{display:none}.product-open{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;position:relative;cursor:pointer}.product-open:disabled{cursor:default}.zoom-label{position:absolute;right:12px;bottom:12px;background:rgba(11,42,74,.9);color:#fff;padding:5px 9px;font-size:12px;opacity:0;transition:.2s}.product-open:hover .zoom-label,.product-open:focus .zoom-label{opacity:1}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(5,17,29,.94);display:grid;place-items:center;padding:60px 20px 20px}.lightbox[hidden]{display:none}.lightbox-content{max-width:1000px;max-height:90vh;text-align:center;color:#fff}.lightbox-content img{max-height:76vh;max-width:90vw;margin:auto}.lightbox-content p{font-family:Georgia,serif;font-size:20px}.lightbox-close{position:absolute;top:15px;right:18px;border:0;background:transparent;color:#fff;font-size:44px;cursor:pointer}.author-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;align-items:center}.portrait-placeholder{aspect-ratio:4/5;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;background-color:var(--indigo);background-image:radial-gradient(circle at 30px 30px,rgba(255,255,255,.15) 0 2px,transparent 3px);background-size:30px 30px;box-shadow:var(--shadow)}.portrait-placeholder span{font:70px Georgia,serif}.portrait-placeholder small{text-transform:uppercase;letter-spacing:.18em}.contact-list{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:28px;color:var(--blue);font-weight:700}.materials-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.material-card{background:#fff;padding:24px;display:grid;grid-template-columns:160px 1fr;gap:24px;align-items:start}.material-card h3{font:400 24px Georgia,serif;color:var(--blue);margin:0 0 8px}.material-card p{color:var(--muted)}.material-preview{display:block;aspect-ratio:1;overflow:hidden;background:#e8edf0}.material-preview img{width:100%;height:100%;object-fit:cover}.pdf-icon{aspect-ratio:1;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:800;letter-spacing:.14em}.site-footer{padding:55px 0;background:#081d32;color:#dbe5ed}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr auto;gap:45px}.site-footer strong{font-family:Georgia,serif;font-size:20px}.site-footer p{color:#9fb0bd;margin:9px 0}.site-footer a{color:#fff}.footer-meta{text-align:right}
@media(max-width:900px){.main-nav{gap:18px}.hero-grid{min-height:auto;grid-template-columns:1fr}.hero-copy{padding:70px 0 30px}.hero-art{min-height:430px;margin-bottom:55px}.product-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.callout-inner{grid-template-columns:1fr 1fr}.callout .button{grid-column:1/-1;justify-self:start}.author-grid{gap:45px}.materials-grid{grid-template-columns:1fr}}
@media(max-width:720px){.container{width:min(100% - 30px,1180px)}.header-inner{min-height:72px}.nav-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:72px;background:#fff;border-bottom:1px solid var(--line);padding:8px 20px 20px;box-shadow:0 15px 25px rgba(11,42,74,.1)}.main-nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.main-nav a{padding:14px 5px}.main-nav a:after{bottom:8px}.hero h1,.page-hero h1{font-size:47px}.section{padding:72px 0}.page-hero{padding:75px 0 60px}.split-copy,.author-grid{grid-template-columns:1fr;gap:25px}.portrait-placeholder{max-width:390px;width:100%;margin:auto}.section-heading{align-items:flex-start;flex-direction:column}.story-item{grid-template-columns:1fr;gap:5px;padding:42px 0}.story-number{font-size:30px}.callout-inner{grid-template-columns:1fr;gap:20px}.footer-grid{grid-template-columns:1fr;gap:22px}.footer-meta{text-align:left}}
@media(max-width:520px){.brand small{display:none}.hero-copy{padding-top:54px}.hero-art{min-height:340px}.pattern-card{width:80%;padding:25px}.button-row{align-items:flex-start;flex-direction:column}.product-grid,.gallery-grid{grid-template-columns:1fr}.gallery-section{padding-top:45px}.filters{display:grid;grid-template-columns:1fr 1fr}.filter{padding:8px}.material-card{grid-template-columns:92px 1fr;padding:16px;gap:16px}.empty-state{padding:30px 20px}}
@media(max-width:360px){.container{width:calc(100% - 24px)}.hero h1,.page-hero h1{font-size:40px}.material-card{grid-template-columns:1fr}.material-preview,.pdf-icon{max-width:150px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Author photo, flyer and discreet administration link. */
.author-portrait{margin:0;aspect-ratio:4/5;overflow:hidden;background:var(--indigo);box-shadow:var(--shadow)}
.author-portrait img{width:100%;height:100%;object-fit:cover;object-position:center center}
.author-flyer-section{background:#fff;padding-top:80px}
.author-flyer{display:block;max-width:920px;margin:0 auto;border:1px solid var(--line);box-shadow:var(--shadow);background:var(--paper)}
.author-flyer img{width:100%;height:auto}
.site-footer .footer-admin-link{color:#81909c;font-size:13px;text-decoration:none}
.site-footer .footer-admin-link:hover,.site-footer .footer-admin-link:focus{color:#b7c2ca;text-decoration:underline}
@media(max-width:720px){.author-portrait{max-width:390px;width:100%;margin:0 auto}.author-flyer-section{padding-top:55px}}

/* Main-page photograph replacing the decorative textile card. */
.hero-art.hero-photo-frame{min-height:0;aspect-ratio:4/5;margin:0;overflow:hidden;background:none;transform:rotate(-5deg)}
.hero-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:900px){.hero-art.hero-photo-frame{width:min(100%,560px);min-height:0;justify-self:center}}

/* Regional certification and document pair. */
.certification-strip{background:#fff;border-bottom:1px solid var(--line)}
.certification-inner{min-height:150px;display:flex;align-items:center;justify-content:center;gap:28px;padding-top:22px;padding-bottom:22px}
.certification-inner img{width:106px;height:106px;object-fit:contain;flex:0 0 auto}
.certification-inner p{margin:0;color:var(--blue);font-family:Georgia,serif;font-size:clamp(24px,3vw,34px);line-height:1.2}
.author-documents-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px;align-items:start}
.author-document{display:flex;flex-direction:column;gap:14px;padding:18px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);color:var(--blue);font-weight:700;text-decoration:none}
.author-document img{width:100%;height:auto}
.author-document span{padding:0 4px 3px}
.author-document:hover span,.author-document:focus span{text-decoration:underline}
@media(max-width:720px){.certification-inner{justify-content:flex-start;gap:18px}.certification-inner img{width:82px;height:82px}.author-documents-grid{grid-template-columns:1fr;gap:26px}}
