
@font-face{font-family:'DM Serif Display';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/dm-serif-display-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/manrope-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/manrope-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/manrope-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/manrope-latin-700-normal.woff2) format('woff2')}
:root{color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:env(safe-area-inset-top,0px)}body{margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#fff;color:#000}img{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}

/* Layout: one long scrolling page, sticky header, sections stacked full-bleed with a 1200px content column. Single light look in Certis24 red and gold. */
:root{--red:#E20512;--red-deep:#B0040E;--gold:#C9A227;--gold-soft:#F4D98C;--ink:#1F1416;--paper:#FBF8F1;--line:#EADFC6;color-scheme:light}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif}
a{color:var(--red)}a:hover{color:var(--red-deep)}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.anchor{scroll-margin-top:72px}
.site-head{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--ink);border-bottom:2px solid var(--gold)}
.site-head .in{max-width:1200px;margin:0 auto;padding-inline:24px;display:flex;align-items:center;gap:28px;min-height:64px}
.brand{font-family:'DM Serif Display',Georgia,serif;font-size:1.7rem;color:#FFFFFF;text-decoration:none;letter-spacing:0.01em;flex:none}
.brand span{color:var(--gold-soft)}
.brand:hover{color:#FFFFFF}
.site-nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;min-width:0;margin-left:auto}
.site-nav::-webkit-scrollbar{display:none}
.site-nav a{flex:none;padding:8px 12px;border-radius:4px;color:#E8DCDD;text-decoration:none;font-size:14.5px;font-weight:600;white-space:nowrap}
.site-nav a:hover{color:#FFFFFF;background:rgba(255,255,255,0.08)}
.site-nav a.on{color:var(--ink);background:var(--gold-soft)}
.hero{position:relative;overflow:hidden;background:var(--ink);color:#FFFFFF}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%;opacity:0.42}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(31,20,22,0.96) 0%,rgba(31,20,22,0.78) 45%,rgba(226,5,18,0.35) 100%)}
.hero .in{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:112px 24px 96px;display:flex;flex-direction:column;gap:26px}
.eyebrow{display:flex;align-items:center;gap:14px;font-size:14px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold-soft)}
.eyebrow::before{content:"";width:40px;height:3px;background:var(--gold)}
.hero h1{margin:0;font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(2.4rem,5.4vw,4.4rem);line-height:1.05;max-width:900px;text-wrap:balance}
.hero h1 em{font-style:normal;color:var(--gold-soft)}
.hero p{margin:0;font-size:1.2rem;line-height:1.65;color:#E8DCDD;max-width:680px}
.hero .ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:6px}
.btn{display:inline-flex;align-items:center;min-height:52px;padding:0 28px;border-radius:4px;font-weight:700;font-size:16px;text-decoration:none}
.btn.gold{background:var(--gold);color:var(--ink)}.btn.gold:hover{background:var(--gold-soft);color:var(--ink)}
.btn.ghost{border:1px solid rgba(244,217,140,0.6);color:#FFFFFF}.btn.ghost:hover{background:rgba(255,255,255,0.08);color:#FFFFFF}
.facts{display:flex;flex-wrap:wrap;gap:12px 36px;margin-top:22px;padding-top:24px;border-top:1px solid rgba(244,217,140,0.35);font-size:15px;color:#E8DCDD}
.facts b{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:2rem;color:var(--gold-soft);margin-right:8px;font-variant-numeric:tabular-nums}
.contact{background:var(--ink);color:#FFFFFF}
.contact .in{max-width:1200px;margin:0 auto;padding:96px 24px 56px;display:flex;flex-direction:column;gap:48px}
.contact h1,.contact h2{margin:0;font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(2rem,4vw,3rem);line-height:1.1;max-width:760px;text-wrap:balance}
.contact .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:16px}
@media (min-width:1000px){.contact .qr-card{grid-column:span 2}}
.contact .card{border:1px solid rgba(244,217,140,0.3);border-radius:6px;padding:26px 24px;display:flex;flex-direction:column;gap:8px}
.contact .k{font-size:13px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold-soft)}
.contact .v{font-size:18px;font-weight:600;line-height:1.4}
.contact .s{font-size:15px;color:#D8C9CB;line-height:1.5}
.sel{user-select:all;font-variant-numeric:tabular-nums;word-break:break-word}
.acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.mini{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:4px;border:1px solid rgba(244,217,140,0.5);background:transparent;color:var(--gold-soft);font:inherit;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer}
.mini:hover{background:rgba(244,217,140,0.12);color:#FFFFFF}
.qr-card{grid-column:1/-1;flex-direction:row !important;flex-wrap:wrap;align-items:center;gap:20px 28px !important}
.who-card{flex-direction:row !important;align-items:center;gap:18px !important}
.who-img{flex:none;width:112px;height:112px;border-radius:50%;object-fit:cover;border:2px solid var(--gold);background:#2A1C1F}
.who-txt{min-width:0;display:flex;flex-direction:column;gap:8px}
.qr-tile{flex:none;padding:8px;background:#FFFFFF;border-radius:8px;line-height:0}
.qr-txt{min-width:0;flex:1 1 240px;display:flex;flex-direction:column;gap:8px}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding-top:28px;border-top:1px solid rgba(244,217,140,0.25);font-size:14px;color:#BFAEB0}
@media (max-width:700px){
 #about h2,#how-we-work h2,#markets h2,#why-certis24 h2,#insights h2,#events h2,#gallery h2,#partners h2,#about h1,#how-we-work h1,#markets h1,#why-certis24 h1,#insights h1,#events h1,#partners h1,#privacy h1,#notfound h1{font-size:2.1rem !important}
 .vc-chev{display:none!important}
 .gc-grid{grid-auto-rows:104px !important;gap:6px !important}
 .gc-wide{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
 .gc-city{font-size:0.95rem !important}
 .gc-ctry{font-size:9px !important;letter-spacing:0.05em !important}
 #gallery figcaption{padding:22px 8px 7px !important}
 .brand{font-size:1.4rem}
 .site-head .in{gap:12px;padding-inline:16px}
 .hero .in{padding:72px 16px 64px}
 section:not(.hero):not(.contact){padding-left:16px !important;padding-right:16px !important}
}


@media (max-width: 1100px){.hero-art{display:none}}
.brand img{display:block;height:36px;width:auto}
.site-foot{background:#FFFFFF;border-top:3px solid var(--gold)}
.site-foot .in{max-width:1200px;margin:0 auto;padding:32px 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px}
.site-foot img{display:block;height:48px;width:auto}
.site-foot .ft{display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.5;color:#6B5A5C;text-align:right}
@media (max-width:700px){.brand img{height:30px}.site-foot .in{padding:28px 16px}.site-foot .ft{text-align:left}}

.cform{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:18px 20px}
.cform .full{grid-column:1/-1}
.cform label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:700;color:var(--ink)}
.cform input,.cform textarea{font:inherit;font-size:16px;font-weight:500;color:var(--ink);background:#FFFFFF;border:1px solid #CDBF9F;border-radius:4px;padding:12px 14px;min-height:48px;box-sizing:border-box;width:100%}
.cform textarea{min-height:160px;resize:vertical}
.cform input:focus,.cform textarea:focus{outline:3px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
.cform .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cform button{justify-self:start;display:inline-flex;align-items:center;min-height:52px;padding:0 28px;border-radius:4px;border:0;background:var(--red);color:#FFFFFF;font:inherit;font-weight:700;font-size:16px;cursor:pointer}
.cform button:hover{background:var(--red-deep)}
.cform button[disabled]{opacity:.6;cursor:wait}
.cform .note{font-size:13.5px;line-height:1.55;color:#6B5A5C}
.form-status{font-size:15px;font-weight:600;min-height:1.5em}
.form-status.ok{color:#1E6B3A}.form-status.err{color:var(--red-deep)}
.legal{max-width:820px}
.legal h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:1.7rem;margin:12px 0 0}
.legal p,.legal li{font-size:1.02rem;line-height:1.7;color:#4E3F41}
.legal ul{margin:0;padding-left:22px}
.site-foot .fnav{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px}
.site-foot .fnav a{color:#6B5A5C;text-decoration:none;font-weight:600}
.site-foot .fnav a:hover{color:var(--red)}

.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--gold);color:var(--ink);padding:10px 16px;font-weight:700}.skip:focus{left:12px;top:12px}
.site-foot .ft{flex-basis:100%;text-align:left;padding-top:16px;border-top:1px solid #EADFC6}

/* International background: dotted world map behind each page's opening section */
.intl-bg{background-image:url(world-light.svg) !important;background-repeat:no-repeat !important;background-position:right -40px top 28px !important;background-size:min(980px,92%) auto !important}
.intl-bg.intl-dark{background-image:url(world-dark.svg) !important}
@media (max-width:700px){.intl-bg{background-position:center top 18px !important;background-size:150% auto !important}}

/* Tagline under the logo */
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:8px 0}
.brand .brand-tag,.foot-brand .brand-tag{display:flex;flex-direction:column;gap:1px;font-family:'Manrope',system-ui,sans-serif;font-size:11.5px;line-height:1.35;font-weight:700;letter-spacing:0.01em;white-space:nowrap}
.brand .brand-tag span{color:var(--gold-soft)}
.brand .brand-tag span+span{color:#CFC3C4;font-weight:600}
.foot-brand{display:flex;flex-direction:column;align-items:flex-start;gap:7px;text-decoration:none}
.foot-brand .brand-tag{font-size:12.5px}
.foot-brand .brand-tag span{color:var(--red)}
.foot-brand .brand-tag span+span{color:#6B5A5C}
@media (max-width:700px){.brand .brand-tag{font-size:9px;letter-spacing:0}}

/* Oxford backdrop: Cooperation (light, fades to white) and Contact (dark overlay) */
.oxf-light{background-image:linear-gradient(180deg,rgba(255,255,255,0.58) 0,rgba(255,255,255,0.74) 340px,#FFFFFF 620px),url(../photos/Oxford-backdrop.jpg) !important;background-repeat:no-repeat !important;background-size:100% 100%,100% auto !important;background-position:top center !important}
.oxf-dark{background-image:linear-gradient(180deg,rgba(31,20,22,0.66) 0,rgba(31,20,22,0.9) 70%),url(../photos/Oxford-backdrop.jpg) !important;background-repeat:no-repeat !important;background-size:100% 100%,cover !important;background-position:top center,center 35% !important}
@media (max-width:700px){.oxf-light{background-image:linear-gradient(180deg,rgba(255,255,255,0.6) 0,rgba(255,255,255,0.8) 220px,#FFFFFF 420px),url(../photos/Oxford-backdrop.jpg) !important;background-size:100% 100%,auto 420px !important}}

/* Home hero portrait */
.hero .hero-portrait{position:absolute;z-index:2;right:24px;top:440px;width:330px;margin:0;border-radius:10px;overflow:hidden;border:1px solid rgba(244,217,140,0.45);box-shadow:0 24px 48px rgba(0,0,0,0.35);background:#1F1416}
.hero .hero-portrait img{position:static;display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;opacity:1}
.hero .hero-portrait figcaption{position:absolute;left:0;right:0;bottom:0;padding:36px 16px 14px;background:linear-gradient(transparent,rgba(20,10,12,0.88));display:flex;flex-direction:column;gap:2px}
.hero .hero-portrait figcaption b{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:1.35rem;color:#FFFFFF}
.hero .hero-portrait figcaption span{font-size:12px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#F4D98C}
@media (min-width:1100px){.hero.has-portrait p,.hero.has-portrait .facts{max-width:640px}.hero.has-portrait h1{max-width:820px}}
@media (max-width:1099px){.hero .hero-portrait{position:relative;right:auto;top:auto;bottom:auto;width:100%;max-width:300px}}

/* Mobile hamburger menu */
.nav-toggle{display:none}
@media (max-width:1070px){
 .site-head .in{flex-wrap:wrap;justify-content:space-between;gap:0 12px;position:relative}
 .nav-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;margin-left:auto;min-width:48px;min-height:48px;padding:0 12px;border:1px solid rgba(244,217,140,0.5);border-radius:6px;background:transparent;color:#FFFFFF;font:700 14px/1 'Manrope',system-ui,sans-serif;cursor:pointer}
 .nav-toggle:focus-visible{outline:2px solid var(--gold-soft);outline-offset:2px}
 .nav-toggle .bars{position:relative;display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:background .15s}
 .nav-toggle .bars::before,.nav-toggle .bars::after{content:"";position:absolute;left:0;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s ease,top .2s ease}
 .nav-toggle .bars::before{top:-7px}.nav-toggle .bars::after{top:7px}
 .nav-open .nav-toggle .bars{background:transparent}
 .nav-open .nav-toggle .bars::before{top:0;transform:rotate(45deg)}
 .nav-open .nav-toggle .bars::after{top:0;transform:rotate(-45deg)}
 .site-nav{display:none;flex-basis:100%;flex-direction:column;gap:2px;margin:0;padding:8px 0 14px;overflow:visible;border-top:1px solid rgba(244,217,140,0.25)}
 .nav-open .site-nav{display:flex}
 .site-nav a{display:block;padding:13px 14px;font-size:16px;border-radius:6px;white-space:normal}
 .site-nav a.on{color:var(--ink);background:var(--gold-soft)}
}
@media (max-width:1070px) and (prefers-reduced-motion:reduce){.nav-toggle .bars::before,.nav-toggle .bars::after{transition:none}}
