/*
Theme Name: We Are Security
Author: Red Icon
Description: Tema custom per We Are Security Milano. Homepage cinematografica e base per pagine interne WordPress.
Version: 0.8.4
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: weare-security
*/
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#101113;--white:#efefea;--muted:#97999c;--red:#ed4236}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--white);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:7px}::selection{background:var(--red);color:white}header{height:102px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;position:absolute;inset:0 0 auto;z-index:20;border-bottom:1px solid #ffffff15}.brand{display:flex;gap:13px;align-items:center;font-size:19px;font-weight:800;line-height:.94;letter-spacing:-.7px}.brand-icon{font-size:44px;font-style:italic;position:relative;color:var(--red);letter-spacing:-12px;padding-right:12px}.brand-icon span{font-size:25px}.brand-sub{display:block;font-size:8px;letter-spacing:1.2px;margin-top:8px}nav{display:flex;gap:35px;font-size:14px;color:#bfc0c1}nav a:hover{color:white}.header-cta{border:1px solid #ffffff40;padding:13px 18px;font-size:14px;display:flex;gap:40px}.header-cta span{color:var(--red)}.cinema{height:205svh}.stage{height:100svh;min-height:660px;position:sticky;top:0;overflow:hidden;background:radial-gradient(ellipse at 75% 48%,#303439 0,#151719 40%,#101113 70%)}.scene-grid{position:absolute;inset:0;background:linear-gradient(90deg,transparent calc(100% - 1px),#ffffff05 1px);background-size:25% 100%}.halo{position:absolute;width:50vw;height:50vw;border:1px solid #ffffff0c;border-radius:50%;left:46%;top:13%;box-shadow:0 0 0 75px #ffffff02,0 0 0 150px #ffffff015}.big-outline{position:absolute;left:36%;top:24%;font:800 19vw/.85 'Barlow Condensed','Arial Narrow',sans-serif;color:transparent;-webkit-text-stroke:1px #ffffff0c;white-space:nowrap;writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:-.02em}#model{position:absolute;inset:0;z-index:2}#model canvas{display:block;width:100%;height:100%}.scene-copy{position:absolute;left:7.6%;top:24%;z-index:4;pointer-events:none;width:52%}.scene-copy a{pointer-events:auto}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600;display:flex;gap:9px;align-items:center}.red-dot{width:6px;height:6px;border-radius:50%;background:var(--red);display:inline-block}.scene-copy h1,.scene-copy h2{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-size:clamp(72px,7.8vw,130px);text-transform:uppercase;line-height:.89;letter-spacing:-.025em;font-weight:600;margin:27px 0 25px}.scene-copy h1 span,.scene-copy h2 span{color:var(--red)}.intro{font-size:16px;line-height:1.7;color:#b8babe}.button{background:var(--red);padding:18px 22px;display:inline-flex;gap:40px;font-size:14px;margin-top:17px;transition:background .2s}.button:hover{background:#ff574a}.scene-two,.scene-three{opacity:0;visibility:hidden}.scene-caption{position:absolute;right:5%;top:48%;display:flex;align-items:center;gap:15px;z-index:3;font-size:10px;letter-spacing:1.5px;line-height:1.8}.cross{color:var(--red);font-size:24px}.caption-rule{height:1px;width:35px;background:#777}.stage-bottom{position:absolute;inset:auto 4.5% 26px;display:flex;justify-content:space-between;align-items:center;z-index:5}.scroll-cue{font-size:11px;letter-spacing:1.8px;display:flex;gap:18px;align-items:center}.scroll-cue>span{border:1px solid #ffffff35;border-radius:50%;height:36px;width:36px;display:grid;place-items:center;font-size:16px}.chapters{display:flex;align-items:center;gap:15px;font-size:12px;font-variant-numeric:tabular-nums}.chapters i{width:100px;height:1px;background:#ffffff30}.chapters b{height:1px;background:var(--red);display:block;width:0}#motion{background:none;color:#a9abaf;border:0;font-size:12px;cursor:pointer}#motion span{margin-left:18px}.text-link{display:inline-flex;gap:45px;padding:12px 0;border-bottom:1px solid #ffffff50;font-size:15px}.presence{position:relative;background:var(--white);color:#202122;padding:80px 7.6% 70px}.section-top{display:flex;justify-content:space-between;align-items:center}.index{font-size:12px;color:#858585}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin:26px 0 48px;gap:40px}.section-heading h2{font-size:clamp(32px,4.2vw,67px);letter-spacing:-3px;line-height:1.06;margin:0;font-weight:500}em{font-family:Georgia,serif;font-weight:400}.section-heading p{max-width:285px;font-size:15px;line-height:1.8;color:#666}.worlds{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.visual{height:300px;background:#202328;position:relative;overflow:hidden;filter:saturate(.4);transition:filter .5s}.world:hover .visual{filter:saturate(1)}.visual-label{position:absolute;left:18px;bottom:18px;font-size:10px;color:#d8d9da;letter-spacing:2px;z-index:4}.stadium{background:radial-gradient(ellipse at 50% 22%,#879897,#303a40 35%,#0b151b 70%)}.stadium-lines{position:absolute;inset:35% -20% -5%;border-radius:50%;border:18px solid #596269;box-shadow:0 0 0 7px #161b22,0 0 0 17px #414a50,0 0 0 23px #12181c,0 0 0 31px #545c60,0 0 0 39px #12191f;transform:rotate(-14deg);background:repeating-linear-gradient(90deg,#3b4f49 0 20px,#34473f 20px 40px)}.orb{position:absolute;inset:20% 15% 30%;border-radius:50%;background:radial-gradient(ellipse,#d3e0dc77,transparent 65%);transform:rotate(-30deg)}.architecture{background:linear-gradient(110deg,#0e141b,#35454e)}.architecture>div{position:absolute;width:73%;height:150%;left:15%;top:10%;transform:skewY(-24deg);background:repeating-linear-gradient(90deg,transparent 0 25px,#10171b 25px 31px),repeating-linear-gradient(0deg,#4d6266 0 30px,#151c20 30px 35px);box-shadow:30px 0 0 #19232a}.private{background:radial-gradient(ellipse at 85% 0%,#8c8d8e,#25292e 50%,#101215)}.private>div{position:absolute;width:110%;height:60%;bottom:-7%;left:20%;transform:rotate(-24deg);border:10px solid #626367;border-radius:45% 25% 0 0;background:linear-gradient(155deg,#1e2a33 40%,#080b0e 42% 50%,#41484e 51% 52%,#0c1014 54%)}.private>div:after{content:'';position:absolute;width:50%;height:5px;background:#bbb;bottom:35%;left:20%;box-shadow:0 3px 10px #000}.world-title{display:flex;align-items:center;gap:12px;margin:17px 0 0}.world-title>span{font-size:11px;color:#8b8c8c}.world-title h3{font-size:20px;font-weight:500;letter-spacing:-.6px;margin:0}.world-title b{margin-left:auto;font-size:20px;font-weight:400}.world>p{font-size:13px;color:#707171;line-height:1.6}.all-services{display:flex;justify-content:space-between;border-top:1px solid #bcbdb9;padding-top:23px;margin-top:42px;font-size:14px}.all-services span{font-size:22px}.statement{padding:110px 7.6%;background:#181a1d;position:relative}.statement h2{font-size:clamp(40px,6vw,88px);line-height:1.04;letter-spacing:-3px;font-weight:500;margin:40px 0 65px}.statement h2 span{color:#777b80}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.principles article{border-top:1px solid #ffffff26;padding-top:22px}.principles span{font-size:11px;letter-spacing:1.5px;color:var(--red)}.principles p{font-size:16px;line-height:1.6;color:#bfc0c2}.contact{padding:90px 7.6%;background:#dfe0dc;color:#151719}.contact .eyebrow{color:#686b68}.contact>div:not(.contact-bottom){display:flex;align-items:center;justify-content:space-between}.contact h2{font-size:clamp(45px,7vw,108px);font-weight:500;line-height:1;letter-spacing:-4px;margin:30px 0 50px}.round-cta{width:110px;height:110px;background:var(--red);border-radius:50%;display:grid;place-items:center;color:white;font-size:55px;transition:transform .3s}.round-cta:hover{transform:rotate(45deg)}.contact-bottom{display:flex;justify-content:space-between;align-items:flex-end}.contact-bottom p{font-size:15px;line-height:1.8;color:#626562;margin:0}.contact-bottom a{font-size:21px;letter-spacing:-.5px;border-bottom:1px solid #aaa;padding-bottom:10px}footer{padding:40px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;color:#929598}.footer-brand{font-size:16px;color:#ddd;font-weight:700}.footer-brand span{display:block;font-size:10px;font-weight:400;letter-spacing:1px;margin-top:5px}footer>span{font-size:10px;letter-spacing:1px}.skip{position:fixed;top:-100px;z-index:99;padding:16px;background:white;color:black}.skip:focus{top:0}.fallback{position:absolute;right:8%;width:40%;height:90%;bottom:0;opacity:.8}.fallback svg{width:100%;height:100%}.has-3d .fallback{display:none}
@media(min-width:1600px){.scene-copy{top:25%}.intro{font-size:17px}.scene-caption{right:6%}}
@media(max-width:760px){header{height:80px;padding:0 6%}nav{display:none}.brand{font-size:15px}.brand-icon{font-size:35px}.brand-sub{font-size:7px}.header-cta{padding:11px 14px;gap:20px}.stage{min-height:680px}.cinema{height:165svh}.scene-copy{left:7%;top:19%;width:85%}.scene-copy h1,.scene-copy h2{font-size:clamp(64px,13vw,90px);margin:23px 0}.eyebrow{font-size:10px;letter-spacing:1.3px}.intro{font-size:14px;max-width:230px}.button{font-size:12px;padding:15px 17px;gap:25px}.scene-caption{display:none}.stage-bottom{inset:auto 6% 20px;flex-wrap:wrap;gap:15px}.scroll-cue{font-size:9px;letter-spacing:1px;gap:10px}.chapters i{width:45px}#motion{font-size:10px}#motion span{margin-left:4px}.halo{width:100vw;height:100vw;left:32%;top:28%}.big-outline{font-size:40vw;left:55%}.presence{padding:55px 7%}.section-heading{display:block;margin:25px 0 30px}.section-heading h2{letter-spacing:-1.7px;font-size:39px}.section-heading p{max-width:100%;font-size:14px;margin-top:25px}.worlds{grid-template-columns:1fr;gap:30px}.visual{height:270px}.world-title h3{font-size:22px}.statement{padding:70px 7%}.statement h2{font-size:43px;letter-spacing:-2px;margin:35px 0 40px}.principles{grid-template-columns:1fr;gap:20px}.principles p{font-size:16px}.contact{padding:60px 7%}.contact h2{font-size:44px;letter-spacing:-2px}.round-cta{width:65px;height:65px;font-size:35px;flex-shrink:0}.contact-bottom{display:block}.contact-bottom a{display:inline-block;margin-top:25px;font-size:19px}footer{padding:30px 7%;flex-wrap:wrap;gap:18px}footer>p{width:100%;order:3}footer>span{display:none}.fallback{right:-28%;width:85%;opacity:.4}.scene-three h2{font-size:12vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.cinema{height:auto}.stage{position:relative}.scene-two,.scene-three{display:none}}
@media(max-width:760px){.stage:after{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,#10111366 0%,#10111355 48%,#10111311 100%)}.scene-copy{z-index:4}.stage-bottom{z-index:5}}
/* The second scroll chapter: one pinned stage, six moving services. */
.services-scroll{padding:0;scroll-margin-top:0;--travel:0px;--drift:0px;--orbit:0deg}
.services-stage{position:relative;padding:55px 7.6% 35px;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.services-backdrop{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 85% 30%,#c9cbc4aa,transparent 65%)}
.services-backdrop:before{content:'';position:absolute;inset:-20%;background:repeating-linear-gradient(115deg,transparent 0 130px,#92978b12 131px 132px);transform:translate3d(var(--drift),0,0)}
.services-backdrop i{position:absolute;width:70vw;height:70vw;right:-20%;top:-20%;border:1px solid #a2a89a55;border-radius:43%;box-shadow:0 0 0 65px #a2a89a0a,0 0 0 130px #a2a89a10;transform:rotate(var(--orbit))}
.services-backdrop b{position:absolute;bottom:0;left:10%;white-space:nowrap;font:600 15vw/1 'Barlow Condensed',sans-serif;color:#bcc0b625;transform:translate3d(var(--drift),0,0)}
.services-stage .section-heading{margin:20px 0 30px}.services-stage .section-heading h2{font-size:clamp(36px,4vw,60px)}
.services-window{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding:6px;margin:-6px;scroll-behavior:auto}.services-window::-webkit-scrollbar{display:none}
.services-track{display:flex;gap:28px;width:max-content;will-change:transform}
.services-track .world{width:clamp(290px,29vw,430px);flex:none}.services-track .visual{height:clamp(180px,30svh,310px)}
.services-track .world-title h3{font-size:clamp(18px,1.65vw,24px)}.services-track .world>p{font-size:14px;max-width:95%}
.services-bottom{display:flex;gap:40px;align-items:center;margin-top:24px;border-top:1px solid #a9ada555;padding-top:18px}.services-bottom>a{font-size:14px;white-space:nowrap}.services-bottom>a span{margin-left:25px}
.services-meter{height:2px;background:#b5b9ae55;flex:1}.services-meter i{display:block;width:16.666%;height:100%;background:var(--red);transform-origin:left}
.service-controls{display:flex;gap:8px}.service-controls button{width:38px;height:38px;border:1px solid #a9ada5;border-radius:50%;background:transparent;cursor:pointer;color:#333;font-size:18px}.service-controls button:hover{background:#ddd}.service-controls button:disabled{opacity:.3;cursor:default}
.services-pinned .services-stage{position:sticky;top:0;height:100svh;min-height:610px}.services-pinned .services-window{overflow:hidden}.services-pinned .services-track{transform:translate3d(var(--travel),0,0)}
.portal{background:radial-gradient(ellipse at 50% 100%,#839492,#18262d 65%)}.portal>div{position:absolute;inset:12% 24% -20%;border:18px solid #697977;box-shadow:0 0 0 2px #c8d0c066,inset 0 0 50px #050f16;background:linear-gradient(130deg,#304249,#11181d);transform:perspective(500px) rotateY(-20deg)}
.blueprint{background:repeating-linear-gradient(0deg,transparent 0 26px,#b7d4d522 26px 27px),repeating-linear-gradient(90deg,#253b43 0 26px,#b7d4d522 26px 27px)}.blueprint>div{position:absolute;inset:22% 15%;border:2px solid #a3c2bb;transform:rotate(-18deg);box-shadow:24px 20px 0 -1px #253b43,24px 20px 0 1px #a3c2bb88}.blueprint>div:before{content:'';position:absolute;inset:20%;border:1px solid #a3c2bb;border-radius:50%}
.night{background:radial-gradient(circle at 70% 25%,#9dacb266 0 7%,transparent 7.4%),linear-gradient(145deg,#18242f,#080b10)}.night>div{position:absolute;bottom:-5%;height:55%;width:110%;background:repeating-linear-gradient(90deg,transparent 0 22px,#101922 23px 36px),repeating-linear-gradient(0deg,#75816f 0 8px,#18242c 9px 26px);transform:skewY(-8deg)}
@media(max-width:760px){.stage{min-height:0}.services-stage{padding:35px 7% 24px}.services-stage .section-heading{margin:16px 0 23px;display:flex;gap:10px}.services-stage .section-heading h2{font-size:36px;letter-spacing:-1.5px}.services-stage .section-heading>p{display:none}.services-track{gap:18px}.services-track .world{width:76vw;max-width:370px}.services-track .visual{height:clamp(180px,32svh,280px)}.services-track .world-title h3{font-size:20px}.services-track .world>p{font-size:13px}.services-bottom{gap:16px;margin-top:18px;padding-top:14px}.services-bottom>a{font-size:12px}.services-bottom>a span{margin-left:8px}.service-controls button{width:32px;height:32px}.services-pinned .services-stage{min-height:540px}.services-backdrop i{width:160vw;height:160vw;right:-80%}}
@media(prefers-reduced-motion:reduce){.services-scroll{height:auto!important}.services-stage{position:relative!important;height:auto!important;min-height:0!important}.services-track{transform:none!important;width:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));will-change:auto}.services-track .world{width:100%;max-width:none}.services-window{overflow:visible!important}.services-backdrop{display:none}.services-meter,.service-controls{display:none}.cinema{height:auto}}
/* Align this pinned chapter with the viewport despite the global anchor offset. */
.services-scroll{scroll-margin-top:-90px}
@media(max-height:610px) and (min-width:761px){.cinema{height:calc(660px + 75svh)}}
/* Brand assets and conversion paths, from the existing website. */
.official-logo{display:block;width:290px;height:auto;mix-blend-mode:normal}.brand{flex-shrink:0}.header-cta{border-color:#ed423680;color:#f1f1ed}.header-cta:hover{background:var(--red)}.header-cta:hover span{color:white}
.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.hero-actions .button{gap:25px}.phone-link{font-size:13px;color:#a6a9ad}.phone-link strong{font-weight:500;color:#e9e9e5;margin-left:9px}.phone-link:hover strong{color:var(--red)}
.service-photo{filter:none;background:#151a1d}.service-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 65%,#080d15aa);pointer-events:none}.service-photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.7);transition:transform .7s,filter .5s}.world:hover .service-photo img{transform:scale(1.04);filter:saturate(1)}.photo-1 img{object-position:50% 46%}.photo-3 img{object-position:50% 32%}.photo-6 img{object-position:73% 40%}
.services-track .world>p{min-height:38px;line-height:1.55;margin:10px 0 12px}.card-cta{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #989e9340;padding-top:12px;font-size:13px}.card-cta>span{color:#c83b30}.world-title>b{display:none}.services-track .visual{height:clamp(165px,27svh,285px)}.service-consultation{font-weight:600;color:#a62d24}.service-consultation:hover{text-decoration:underline}
.experience{padding:90px 7.6% 100px;background:#181a1d}.experience-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:45px}.experience h2{font-size:clamp(35px,4.5vw,66px);font-weight:500;line-height:1.1;letter-spacing:-2px;margin:22px 0 0}.experience-heading>p{font-size:15px;line-height:1.8;color:#a6a9ad;max-width:300px}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.experience-photo{aspect-ratio:1.55;overflow:hidden;background:#25292c}.experience-photo img{width:100%;height:100%;object-fit:cover;display:block}.experience-caption{display:flex;justify-content:space-between;align-items:end;gap:20px;padding-top:18px}.experience-caption .eyebrow{font-size:10px;color:#a6a9ad}.experience h3{font-size:26px;letter-spacing:-.6px;margin:12px 0 7px;font-weight:500}.experience-caption p:not(.eyebrow){font-size:14px;color:#a6a9ad;margin:0}.experience-caption a{font-size:13px;border-bottom:1px solid #6f7378;padding:8px 0;white-space:nowrap}.experience-caption a:hover{color:var(--red)}
.contact .contact-layout{display:grid!important;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center!important}.contact h2{font-size:clamp(42px,5.2vw,76px);letter-spacing:-3px;margin:28px 0}.contact-copy>p{font-size:16px;line-height:1.8;color:#5f635d}.contact-copy .contact-location{font-size:11px;letter-spacing:1px;margin-top:32px}.contact-panel{padding:35px;background:#ecede8;border:1px solid #c8cbc1}.contact-step{font-size:11px;letter-spacing:1.4px;color:#71786c}.contact-panel h3{font-size:28px;font-weight:500;letter-spacing:-.7px;line-height:1.2;margin:22px 0 15px}.contact-panel>p{font-size:14px;line-height:1.8;color:#666d60}.contact-primary{display:flex;justify-content:space-between;align-items:center;color:white;margin-top:24px;gap:15px;line-height:1.5}.contact-divider{display:block;font-size:10px;letter-spacing:1px;color:#777d70;margin:24px 0 16px}.contact-phone{display:flex;flex-direction:column;gap:7px}.contact-phone>span{font-size:13px;color:#73796d}.contact-phone>strong{font-size:23px;font-weight:500}.contact-phone:hover strong{color:#bd352b}.footer-brand .official-logo{width:230px}
@media(max-width:1000px) and (min-width:761px){.official-logo{width:230px}nav{gap:18px}.header-cta{gap:15px}.contact .contact-layout{gap:35px}.contact-panel{padding:25px}.contact-primary{font-size:13px}.experience-caption{display:block}.experience-caption>a{display:inline-block;margin-top:12px}}
@media(max-width:760px){header{gap:15px}.brand .official-logo{width:clamp(155px,40vw,220px)}.header-cta{padding:11px 10px;gap:10px;font-size:11px;white-space:nowrap}.hero-actions{gap:12px}.hero-actions .button{font-size:13px;padding:15px;gap:15px}.phone-link{font-size:11px}.phone-link strong{margin-left:5px}.scene-copy{top:18%}.services-track .world>p{min-height:35px;font-size:13px}.services-track .visual{height:clamp(170px,27svh,265px)}.card-cta{font-size:12px;padding-top:10px}.services-bottom>a{font-size:12px;white-space:normal;max-width:145px}.services-bottom{gap:12px}.experience{padding:60px 7%}.experience-heading{display:block;margin-bottom:28px}.experience h2{font-size:36px;letter-spacing:-1.5px}.experience-heading>p{font-size:14px;margin-top:20px}.experience-grid{grid-template-columns:1fr;gap:36px}.experience-caption{gap:12px}.experience-caption>a{font-size:11px}.experience h3{font-size:22px}.experience-caption p:not(.eyebrow){font-size:12px}.contact .contact-layout{display:block!important}.contact h2{font-size:43px;letter-spacing:-1.8px}.contact-copy>p{font-size:14px}.contact-copy .contact-location{font-size:10px;margin:22px 0 30px}.contact-panel{padding:24px}.contact-panel h3{font-size:28px}.contact-primary{font-size:13px;padding:16px 13px}.contact-phone>strong{font-size:22px}.footer-brand .official-logo{width:210px}}
@media(max-height:710px) and (max-width:760px){.scene-copy{top:17%}.scene-copy h1,.scene-copy h2{font-size:57px;margin:20px 0 15px}.scene-copy .intro{font-size:13px;line-height:1.5}.hero-actions{gap:9px}.hero-actions .button{margin-top:9px}.services-track .visual{height:23svh}.services-stage{padding-top:25px;padding-bottom:25px}.services-stage .section-heading{margin:12px 0 20px}.services-stage .section-heading h2{font-size:31px}.services-bottom{margin-top:12px}}
/* Local Earth film: translucent, underneath the operator and all content. */
.stage{--earth-rise:0px;isolation:isolate}
.hero-film{position:absolute;left:0;top:0;width:100%;height:140%;z-index:0;pointer-events:none;opacity:.43;transform:translate3d(0,var(--earth-rise),0);will-change:transform}
.hero-film video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-film-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#101113cc 0%,#10111355 42%,#10111311 75%),linear-gradient(0deg,#101113 0%,transparent 22%,transparent 80%,#10111366 100%)}
.scene-grid,.halo,.big-outline{z-index:1;pointer-events:none}.video-unavailable .hero-film{display:none}
@media(max-width:760px){.hero-film{opacity:.35}.hero-film video{object-position:55% center}.hero-film-shade{background:linear-gradient(90deg,#10111377,transparent 90%),linear-gradient(0deg,#101113 0%,transparent 25%,#10111322 100%)}}
@media(prefers-reduced-motion:reduce){.hero-film{transform:none!important;will-change:auto}}
/* Services: central headline, generous photography, no scattered microcopy. */
.services-stage{padding:0;justify-content:flex-end;gap:0}
.services-stage .services-heading{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;flex:1;min-height:220px;width:100%;margin:0;padding:65px 7.6% 42px;text-align:center}
.services-stage .services-heading h2{font-size:clamp(40px,4.7vw,70px);line-height:1.08;letter-spacing:-2.5px;margin:0}
.services-heading .service-controls{position:absolute;right:7.6%;bottom:44px;gap:10px}
.services-heading .service-controls button{width:44px;height:44px;font-size:21px;background:#efefea88;border-color:#979e9255}
.services-window{flex-shrink:0;width:100%;padding:0 7.6%;margin:0}
.services-track{gap:24px}
.services-track .world{position:relative;display:block;width:46vw;max-width:none;min-width:340px;overflow:hidden;color:#fff}
.services-track .visual{height:47svh;min-height:280px;max-height:none;margin:0}
.services-track .service-photo:after{background:linear-gradient(transparent 35%,#080d1544 60%,#080d15d9 100%)}
.services-track .world-title{position:absolute;inset:auto 30px 30px;margin:0;display:flex;align-items:end;gap:25px;z-index:2}
.services-track .world-title h3{font-size:clamp(29px,3vw,46px);font-weight:500;letter-spacing:-1.2px;line-height:1.06;max-width:85%;text-wrap:balance}
.services-track .world-title>b{display:grid;place-items:center;border:1px solid #ffffff70;border-radius:50%;width:44px;height:44px;flex-shrink:0;font-size:24px;font-weight:400;margin-left:auto}
.services-track .world:hover .world-title>b{background:var(--red);border-color:var(--red)}
.services-track .world:focus-visible{outline:3px solid var(--red);outline-offset:-4px}
.services-backdrop:before{opacity:.45}.services-backdrop i{opacity:.4}
@media(max-width:760px){.services-stage{padding:0}.services-stage .services-heading{min-height:200px;padding:42px 7% 68px}.services-stage .services-heading h2{font-size:40px;letter-spacing:-1.7px}.services-heading .service-controls{right:7%;bottom:16px;gap:8px}.services-heading .service-controls button{width:36px;height:36px;font-size:18px}.services-window{padding:0 7%}.services-track{gap:16px}.services-track .world{width:84vw;min-width:0;max-width:none}.services-track .visual{height:51svh;min-height:260px}.services-track .world-title{inset:auto 22px 25px;gap:10px}.services-track .world-title h3{font-size:32px;letter-spacing:-1px}.services-track .world-title>b{width:36px;height:36px;font-size:21px}}
@media(prefers-reduced-motion:reduce){.services-stage .services-heading{flex:none;padding-bottom:40px}.services-heading .service-controls{display:none}.services-window{padding-bottom:40px}.services-track .world{width:100%;min-width:0}.services-track .visual{height:380px}.services-track .world-title h3{font-size:32px}}

/* Solid header and a raised, breathing services composition. */
header{background:#000;border-bottom-color:#ffffff18}
.services-stage{justify-content:center;padding:60px 0 90px}
.services-stage .services-heading{flex:none;min-height:0;padding:0 7.6% 46px}
.services-heading .service-controls{bottom:46px}
.services-backdrop:before,.services-backdrop i{opacity:1}
.services-backdrop b{color:#aeb5a529}
@media(max-width:760px){.services-stage{padding:40px 0 60px}.services-stage .services-heading{min-height:0;padding:0 7% 68px}.services-heading .service-controls{bottom:16px}.services-track .visual{height:47svh;min-height:240px}}
@media(max-height:710px){.services-stage{padding-top:25px;padding-bottom:35px}.services-stage .services-heading h2{font-size:clamp(31px,4.2vw,48px)}.services-stage .services-heading{padding-bottom:36px}.services-heading .service-controls{bottom:36px}.services-track .visual{height:44svh;min-height:220px}}
@media(max-height:710px) and (max-width:760px){.services-stage .services-heading{padding-bottom:58px}.services-heading .service-controls{bottom:12px}}

/* Concert crowd film behind the experience section. */
.experience{position:relative;isolation:isolate;overflow:hidden}
.experience-film{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.38}
.experience-film video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.experience-shade{position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,#181a1d77 0%,#181a1d22 45%,#181a1d99 100%)}
.experience-heading,.experience-grid{position:relative;z-index:1}
.experience-heading>p,.experience-caption .eyebrow,.experience-caption p:not(.eyebrow){color:#c0c3c6}
@media(max-width:760px){.experience-film{opacity:.3}.experience-film video{object-position:60% center}}

/* Production footer content, arranged on the same black as the header. */
.site-footer{display:block;background:#000;color:#a5a7ab;padding:64px 7.6% 0;font-size:16px}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:54px}
.site-footer .footer-brand .official-logo{display:block;width:280px;max-width:100%;height:auto}
.footer-back{display:flex;align-items:center;gap:20px;font-size:15px;color:#d9dadb;white-space:nowrap}
.footer-back span{display:grid;place-items:center;width:38px;height:38px;border:1px solid #ffffff30;border-radius:50%;font-size:20px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1.1fr .85fr 1.05fr;gap:46px}
.site-footer h2{margin:0 0 25px;color:#f0f0ec;font-size:17px;font-weight:500;letter-spacing:-.3px;line-height:1.4}
.footer-description p{font-size:15px;line-height:1.85;margin:0 0 14px;max-width:360px}
.site-footer .footer-nav{display:block;color:inherit;font-size:15px}
.footer-nav ul{list-style:none;padding:0;margin:0;display:grid;gap:15px}
.footer-nav a{display:inline-block;line-height:1.5;transition:color .2s}
.site-footer a:hover{color:#fff}
.footer-offices address{font-style:normal;font-size:15px;line-height:1.8;margin:0 0 23px}
.footer-offices address strong{display:block;color:#dedfdf;font-weight:500;margin-bottom:4px}
.footer-phone{display:inline-flex;align-items:center;gap:18px;color:#eee;font-size:16px;padding:3px 0;border-bottom:1px solid #ffffff30}
.footer-phone span{color:var(--red)}
.footer-credit{margin:38px 0 24px;font-size:13px;color:#8d9094;display:flex;gap:8px}
.footer-credit a{color:#c5c6c8}
.footer-legal{border-top:1px solid #ffffff24;display:flex;justify-content:space-between;gap:18px;padding:24px 0 28px;font-size:14px;line-height:1.6}
.footer-legal p{margin:0}.footer-legal p:first-child{color:#d5d6d8}
@media(max-width:1100px){.footer-grid{grid-template-columns:1.4fr 1fr;gap:38px 60px}.footer-description p{max-width:100%}}
@media(max-width:760px){.site-footer{padding:45px 7% 0}.footer-top{margin-bottom:38px;gap:15px}.site-footer .footer-brand .official-logo{width:215px}.footer-back{font-size:0;gap:0}.footer-back span{font-size:20px}.footer-grid{grid-template-columns:1fr 1fr;gap:34px 20px}.footer-description,.footer-offices{grid-column:1/-1}.site-footer h2{margin-bottom:18px;font-size:16px}.footer-description p,.site-footer .footer-nav,.footer-offices address{font-size:15px}.footer-nav ul{gap:13px}.footer-offices{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.footer-offices h2{grid-column:1/-1}.footer-phone{justify-self:start;grid-column:1/-1}.footer-credit{margin-top:32px}.footer-legal{flex-direction:column;gap:5px;padding:22px 0 26px}}

/* Extra video area keeps the parallax covered at both scroll extremes. */
.experience-film{inset:0 0 auto;height:calc(100svh + 120px);opacity:.55;transform:translate3d(0,var(--experience-shift,0px),0);will-change:transform}
.latest-news{padding:90px 7.6% 100px;background:#131517}
.news-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:42px}
.news-heading h2{font-size:clamp(38px,4.5vw,66px);line-height:1.1;font-weight:500;letter-spacing:-2px;margin:0}
.news-heading .text-link{white-space:nowrap}
.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.news-card>a{display:flex;flex-direction:column;height:100%}
.news-image{aspect-ratio:1.6;overflow:hidden;background:#25292c;margin-bottom:24px}
.news-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s,filter .5s;filter:saturate(.65)}
.news-card a:hover img{transform:scale(1.035);filter:saturate(1)}
.news-card time{color:#a6a9ad;font-size:14px}
.news-card h3{font-size:clamp(20px,1.7vw,26px);font-weight:500;line-height:1.35;letter-spacing:-.5px;margin:14px 0 28px}
.news-read{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff26;padding-top:18px;margin-top:auto;font-size:15px}
.news-read>span{color:var(--red);font-size:22px}
@media(max-width:760px){.experience-film{opacity:.52}.latest-news{padding:60px 7%}.news-heading{align-items:flex-end;margin-bottom:30px}.news-heading h2{font-size:40px;letter-spacing:-1.5px}.news-heading .text-link{font-size:14px;gap:15px}.news-grid{grid-template-columns:1fr;gap:40px}.news-card h3{font-size:23px;margin-bottom:22px}.news-image{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.experience-film{inset:0;height:auto;transform:none;will-change:auto}.news-image img{transition:none}.news-card a:hover img{transform:none}}

.experience-motion-paused .experience-film{inset:0;height:auto;transform:none;will-change:auto}

/* Two contact moments: a complete enquiry form and a closing invitation. */
.consultation{padding:100px 7.6%;background:#efefea;color:#181a1b;display:grid;grid-template-columns:1fr 1.05fr;gap:8%;align-items:center}
.consultation-copy .eyebrow{color:#626660;font-size:12px;letter-spacing:1.5px}
.consultation-copy h2{font-size:clamp(42px,4.8vw,72px);line-height:1.05;letter-spacing:-2.5px;font-weight:500;margin:30px 0}
.consultation-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;color:#656860;max-width:400px}
.consultation-copy .consultation-free{margin:24px 0 0;color:#282c27!important;font-weight:500}
.consultation-phone{display:inline-flex;flex-direction:column;gap:12px;margin-top:55px}
.consultation-phone span{font-size:15px;color:#656860}.consultation-phone strong{font-size:25px;font-weight:500;letter-spacing:-.5px}
.consultation-phone:hover strong{color:#ba3229}
.consultation-form{padding:36px;background:#fff;border:1px solid #dedfd8}
.consultation-form h3{margin:0 0 10px;font-size:26px;font-weight:500;letter-spacing:-.7px}
.form-intro{margin:0 0 28px;font-size:15px;color:#656860;line-height:1.6}
.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}
.form-fields label{display:block;font-size:14px;line-height:1.5;font-weight:500;min-width:0}
.form-fields label>span{color:#b83228}.field-wide{grid-column:1/-1}
.form-fields input,.form-fields select,.form-fields textarea{display:block;width:100%;margin-top:8px;border:1px solid #d3d6ce;border-radius:0;background:#fafbf8;color:#202321;padding:13px 12px;font:400 16px 'DM Sans',Arial,sans-serif;min-height:46px}
.form-fields textarea{resize:vertical;min-height:90px}.form-fields input::placeholder,.form-fields textarea::placeholder{color:#7d807a}
.consultation-form input:focus-visible,.consultation-form select:focus-visible,.consultation-form textarea:focus-visible{outline:2px solid #a7342d;outline-offset:2px}
.form-consent{display:flex;align-items:flex-start;gap:10px;margin:22px 0;font-size:13px;line-height:1.6;color:#62665f}
.form-consent input{width:17px;height:17px;flex-shrink:0;margin:1px 0 0;accent-color:#b73429}.form-consent a{text-decoration:underline;text-underline-offset:3px}
.form-submit{display:flex;justify-content:space-between;align-items:center;gap:15px;width:100%;border:0;padding:18px 20px;background:var(--red);color:#fff;font-size:15px;cursor:pointer}.form-submit:hover{background:#c73329}.form-submit>span{font-size:20px}
.form-note{font-size:13px;line-height:1.5;color:#767b73;margin:14px 0 0}
.cta-strip{display:flex;align-items:center;justify-content:space-between;gap:35px;background:#ed4236;color:white;padding:50px 7.6%}
.cta-strip h2{font-size:clamp(27px,2.8vw,42px);line-height:1.15;letter-spacing:-1.2px;font-weight:500;margin:0 0 12px}
.cta-strip p{font-size:16px;line-height:1.6;margin:0;color:#fff}
.cta-strip>a{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#080808;color:white;padding:20px 25px;font-size:16px;white-space:nowrap;transition:background .2s}.cta-strip>a:hover{background:#262626}
@media(max-width:1000px){.consultation{gap:5%;padding:75px 7%}.consultation-form{padding:26px}.consultation-copy h2{font-size:48px}.cta-strip{padding:40px 7%}}
@media(max-width:760px){.consultation{grid-template-columns:1fr;gap:36px;padding:60px 7%}.consultation-copy h2{font-size:46px;letter-spacing:-1.8px;margin:25px 0}.consultation-copy>p:not(.eyebrow){font-size:16px}.consultation-phone{margin-top:25px}.consultation-phone strong{font-size:23px}.consultation-form{padding:25px 20px}.consultation-form h3{font-size:24px}.form-fields{grid-template-columns:1fr;gap:17px}.form-fields input,.form-fields select,.form-fields textarea{font-size:16px}.form-submit{font-size:14px;padding:16px 13px}.cta-strip{flex-direction:column;align-items:stretch;gap:25px;padding:38px 7%}.cta-strip h2{font-size:31px}.cta-strip p{font-size:15px}.cta-strip>a{justify-content:space-between}}

/* Soft lower edge integrates the portrait into the cinematic background. */
.bust-version #model{mask-image:linear-gradient(to bottom,#000 0%,#000 76%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 76%,transparent 100%)}
@media(max-width:760px){.bust-version #model{opacity:.7;mask-image:linear-gradient(to right,transparent 0%,#000 55%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 55%)}}

/* Photographic alternative: quiet camera movement and scroll-driven depth. */
.photo-version .stage{background:#101317}
.hero-photo{position:absolute;inset:-3% -3% -15%;transform:translate3d(0,var(--photo-y,0px),0) scale(var(--photo-scale,1));transform-origin:72% 45%;will-change:transform}
.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:66% 45%;animation:hero-photo-breathe 24s ease-in-out infinite alternate;transform-origin:72% 45%}
.hero-photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080d14e8 0%,#080d14ba 32%,#080d1450 58%,#080d140a 100%),linear-gradient(0deg,#080d14bc 0%,transparent 25%,transparent 80%,#080d1433 100%)}
@keyframes hero-photo-breathe{from{transform:scale(1)}to{transform:scale(1.045) translate3d(-.6%,0,0)}}
.motion-paused .hero-photo img{animation-play-state:paused}
@media(max-width:760px){.hero-photo img{object-position:73% center}.hero-photo-shade{background:linear-gradient(90deg,#080d14df 0%,#080d1480 70%,#080d1466 100%),linear-gradient(0deg,#080d14d9,transparent 40%)}.photo-version .scene-copy{width:86%}}
@media(max-height:760px) and (min-width:761px){.photo-version .scene-copy{top:22%}.photo-version .scene-copy h1,.photo-version .scene-copy h2{font-size:clamp(64px,6.7vw,96px);margin:22px 0}.photo-version .hero-actions{gap:10px}.photo-version .intro{line-height:1.6}}
@media(prefers-reduced-motion:reduce){.hero-photo{transform:none;will-change:auto}.hero-photo img{animation:none}}

/* Concrete hero messages sized for the photographic composition. */
.photo-version .scene-one h1{font-size:clamp(60px,6.7vw,106px)}
.photo-version .scene-two h2{font-size:clamp(58px,5.8vw,92px);line-height:.98}
@media(max-width:760px){.photo-version .scene-one h1{font-size:clamp(44px,11.6vw,76px)}.photo-version .scene-two h2{font-size:clamp(40px,10.2vw,66px)}}

/* WordPress navigation and shared inner-page layout. */
.primary-menu{display:flex;gap:35px;list-style:none;margin:0;padding:0}
.admin-bar>header{top:32px}
.admin-bar .stage,.admin-bar .services-stage{top:32px}
.inner-page .page-content{padding:170px 7.5% 90px;max-width:1250px;margin:auto;min-height:60vh}
.inner-page .page-content h1{font:700 clamp(42px,6vw,86px)/1.05 'Barlow Condensed',sans-serif;margin:0 0 38px;text-transform:uppercase}
.inner-page .entry-content{font-size:18px;line-height:1.8}
.entry-content a{color:var(--red);text-decoration:underline}
.entry-content img{max-width:100%;height:auto}
.entry-content iframe{max-width:100%}
.entry-content h2,.entry-content h3{line-height:1.25;margin-top:2em}
.article-list{display:grid;gap:38px}
.article-list article{padding-bottom:30px;border-bottom:1px solid #ffffff25}
.article-list h2{font-size:30px}
.pagination{margin-top:40px;display:flex;gap:20px}
@media(max-width:782px){.admin-bar>header{top:46px}.admin-bar .stage,.admin-bar .services-stage{top:46px}}
@media(max-width:760px){.primary-menu{gap:15px}.inner-page .page-content{padding:135px 7% 65px}.inner-page .entry-content{font-size:17px}}

/* Shared navigation: pillar link, service dropdown and mobile menu. */
.site-header{gap:22px}
.site-header .primary-navigation{display:block;font-size:14px;color:#efefea}
.site-header .primary-menu{gap:22px;align-items:center}
.primary-menu,.primary-menu .sub-menu{list-style:none;margin:0;padding:0}
.primary-menu>li{position:relative;white-space:nowrap}
.primary-menu>li>a{display:inline-block;padding:18px 0}
.primary-menu .sub-menu{display:none;position:absolute;top:100%;left:-20px;min-width:265px;background:#000;border:1px solid #ffffff24;padding:12px 0;box-shadow:0 20px 35px #0006;z-index:30}
.primary-menu .sub-menu a{display:block;padding:12px 20px;line-height:1.4;white-space:normal;color:#ddd}
.primary-menu .sub-menu a:hover,.primary-menu .sub-menu a:focus-visible{background:#ffffff0b;color:var(--red)}
.primary-menu li.submenu-open>.sub-menu,.site-header:not(.nav-ready) .primary-menu li:hover>.sub-menu,.site-header:not(.nav-ready) .primary-menu li:focus-within>.sub-menu{display:block}
.submenu-toggle{color:inherit;background:none;border:0;cursor:pointer;padding:12px 0 12px 8px;font-size:15px}
.submenu-toggle[aria-expanded="true"] span{display:inline-block;transform:rotate(180deg)}
.menu-toggle,.primary-menu .mobile-consultation{display:none}
.contact-anchor{display:block;scroll-margin-top:90px}
@media(min-width:1101px){.site-header .header-cta{gap:18px;white-space:nowrap}}
@media(max-width:1100px){
 .site-header{gap:16px}.site-header .brand .official-logo{width:230px}
 .site-header.nav-ready .menu-toggle{display:flex;align-items:center;gap:12px;margin-left:auto;background:none;border:1px solid #ffffff40;color:white;padding:12px 14px;cursor:pointer;font-size:14px}
 .site-header.nav-ready .primary-navigation{display:none;position:absolute;top:100%;left:0;right:0;background:#000;border-top:1px solid #ffffff20;max-height:calc(100svh - 150px);overflow-y:auto;padding:18px 6%;box-shadow:0 20px 35px #0006}
 .site-header.nav-ready.menu-open .primary-navigation{display:block}
 .site-header .primary-menu{display:block}
 .primary-menu>li{border-bottom:1px solid #ffffff15}
 .primary-menu>li>a{padding:16px 0;font-size:16px}
 .primary-menu .sub-menu{position:static;min-width:0;padding:0 0 12px 12px;border:0;box-shadow:none}
 .primary-menu .sub-menu a{padding:12px 14px;font-size:15px}
 .submenu-toggle{float:right;padding:16px 12px;font-size:19px}
 .primary-menu .mobile-consultation{display:block;border:0}
 .primary-menu .mobile-consultation>a{color:var(--red)}
}
@media(max-width:600px){.site-header{padding:0 6%;height:84px}.site-header .brand .official-logo{width:clamp(170px,48vw,220px)}.site-header .header-cta{display:none}.site-header.nav-ready .menu-toggle{padding:10px;gap:9px;font-size:14px}}

/* Locally hosted Bootstrap Icons webfont. */
.bi{display:inline-block;line-height:1;vertical-align:-.1em;font-style:normal}
.submenu-toggle .bi{font-size:12px}
.menu-toggle .bi{font-size:20px}
.world-title .bi{font-size:25px}

/* Location markers in the footer, aligned with both office labels. */
.footer-offices address{position:relative;padding-left:27px}
.footer-offices .office-icon{position:absolute;left:0;top:4px;font-size:18px;color:var(--red)}
.footer-phone>.bi{color:var(--red);font-size:16px}

/* Interior pages: readable original copy, photographic headers and shared contact forms. */
.service-page{background:#f4f4ef;color:#202122}
.service-container{width:min(1160px,85%);margin:0 auto}
.service-hero{padding-top:102px;display:grid;grid-template-columns:1.1fr 1fr;background:#101113;color:#efefea;min-height:660px}
.service-hero-copy{padding:70px 10% 70px 14%;align-self:center}
.service-hero h1{font:600 clamp(48px,5.2vw,84px)/1.03 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:-.02em;margin:25px 0 20px}
.service-hero .eyebrow{color:#b6b7b7;line-height:1.8}
.service-hero-image{min-height:500px;overflow:hidden}
.service-hero-image img{width:100%;height:100%;object-fit:cover;display:block}
.service-intro{padding:65px 0;font-size:19px;line-height:1.85}
.service-intro>p{max-width:1050px;margin:0 auto 25px}
.service-jump{display:flex!important;flex-wrap:wrap;gap:12px;margin-top:35px;color:#333;font-size:15px}
.service-jump a{padding:12px 18px;border:1px solid #0002;border-radius:2px;background:#fff}
.service-jump a:hover{background:#000;color:#fff}
.service-section{padding-top:75px;padding-bottom:75px}
.service-section h2{font-size:clamp(30px,3vw,44px);line-height:1.15;letter-spacing:-1px;font-weight:500;margin:0 0 25px}
.service-section p{font-size:17px;line-height:1.85;color:#555}
.service-section-heading{max-width:970px;margin-bottom:45px}
.service-context,.service-examples{background:#e7e9e2}
.service-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.service-card{padding:30px;background:#f8f8f4;border:1px solid #0000000d}
.service-card>.bi{color:var(--red);font-size:29px;margin-bottom:20px}
.service-card h3{font-size:23px;line-height:1.3;font-weight:500;margin:0 0 15px}
.service-card p{font-size:16px;margin:0}
.service-wide-copy{max-width:950px;margin:auto}
.service-mid-cta{margin:0}
.service-faq-list{border-top:1px solid #0002}
.service-faq{border-bottom:1px solid #0002;padding:0}
.service-faq summary{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:25px 0;font-size:20px;line-height:1.5;cursor:pointer;list-style:none}
.service-faq summary::-webkit-details-marker{display:none}
.service-faq summary>.bi{color:var(--red);font-size:18px;flex-shrink:0}
.service-faq[open] summary>.bi{transform:rotate(45deg)}
.service-faq-answer{max-width:950px;padding:0 30px 22px 0}
.service-faq-answer p{margin-top:0}
.service-example{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;margin-top:55px}
.service-example:nth-of-type(even) .service-example-image{order:-1}
.service-example h3{font-size:29px;font-weight:500;line-height:1.2;margin:0 0 24px}
.service-example-image img{width:100%;height:430px;object-fit:cover;display:block}
.inner-consultation{border-top:1px solid #0001}
.inner-consultation h2{font-size:clamp(35px,3.7vw,58px);letter-spacing:-1.6px}
.contact-email{display:block;margin-top:22px;overflow-wrap:anywhere;font-size:16px}
.about-hero{grid-template-columns:1.35fr 1fr}
.about-hero-mark{padding:55px;display:flex;align-items:center;justify-content:center;background:#efefea}
.about-hero-mark img{width:100%;max-width:380px;height:auto;mix-blend-mode:normal}
.about-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.about-card{padding:32px;background:#f4f4ef}
.about-card>.bi{font-size:30px;color:var(--red);margin-bottom:22px}
.about-card .eyebrow{color:#666;font-size:12px;margin-bottom:12px}
.about-card h2{font-size:29px;margin-top:10px}
.about-card .text-link{font-size:15px}
.clients-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}
.client-card{background:#fff;padding:30px;border:1px solid #0001;text-align:center}
.client-card img{max-width:100%;width:180px;height:100px;object-fit:contain;margin:auto}
.client-card h3{font-size:16px;line-height:1.5;font-weight:500;margin-top:24px}
.contact-page-hero{padding-top:165px;padding-bottom:40px}
.contact-page-hero h1{font:600 clamp(60px,8vw,100px)/1.05 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:20px 0}
.contact-page-hero h2{font-size:27px;font-weight:400;max-width:700px;line-height:1.5}
.contact-details{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;padding-bottom:70px}
.contact-details article{background:#fff;padding:30px;border:1px solid #0001}
.contact-details .bi{font-size:26px;color:var(--red)}
.contact-details h2{font-size:22px;font-weight:500;margin:18px 0 12px}
.contact-details a,.contact-details p{font-size:18px;line-height:1.7;overflow-wrap:anywhere}
.consultation-form .gform_wrapper{--gf-color-primary:#ed4236;--gf-color-primary-contrast:#fff;--gf-ctrl-btn-bg-color-primary:#ed4236;--gf-ctrl-btn-color-primary:#fff;--gf-font-family:'DM Sans',Arial,sans-serif;--gf-ctrl-border-radius:0;--gf-ctrl-btn-border-radius:0}
.consultation-form .gform_title{font-size:27px!important;margin:0 0 20px!important}
.consultation-form .gfield_label{font-size:15px!important;color:#333!important}
.consultation-form .ginput_container input:not([type=checkbox]):not([type=radio]),.consultation-form .ginput_container select,.consultation-form .ginput_container textarea{font-family:inherit;font-size:16px!important;border:1px solid #d3d4ce!important;padding:12px!important;background:#f9f9f6!important;color:#222!important}
.consultation-form .gform_button{background:var(--red)!important;color:white!important;border:0!important;padding:17px 25px!important;font-family:inherit;font-size:16px!important;cursor:pointer}
.consultation-form .gfield_description,.consultation-form .gfield_required{font-size:13px!important}
.consultation-form .gfield_consent_label{font-size:13px!important;line-height:1.6!important}
.consultation-form .gfield_consent_label a{text-decoration:underline}
@media(max-width:1000px){.service-hero-copy{padding:50px 8% 50px 13%}.service-card-grid,.about-card-grid{grid-template-columns:repeat(2,1fr)}.service-example{gap:30px}.service-example-image img{height:350px}.service-hero h1{font-size:56px}}
@media(max-width:760px){.service-container{width:86%}.service-hero{padding-top:84px;grid-template-columns:1fr;min-height:0}.service-hero-copy{padding:45px 7%}.service-hero h1{font-size:clamp(44px,10vw,64px)}.service-hero-image{min-height:0;height:300px}.service-intro{padding:40px 0;font-size:17px}.service-jump{gap:8px}.service-jump a{padding:10px 12px;font-size:13px}.service-section{padding-top:48px;padding-bottom:48px}.service-section h2{font-size:31px}.service-section p{font-size:16px}.service-card-grid,.about-card-grid,.service-example{grid-template-columns:1fr}.service-card{padding:25px}.service-example{gap:25px;margin-top:40px}.service-example:nth-of-type(even) .service-example-image{order:0}.service-example-image img{height:300px}.service-example h3{font-size:26px}.service-faq summary{font-size:18px;padding:20px 0}.inner-consultation h2{font-size:37px}.about-hero-mark{padding:35px}.about-hero-mark img{max-width:240px}.clients-grid{grid-template-columns:repeat(2,1fr);gap:14px}.client-card{padding:20px 14px}.client-card h3{font-size:14px}.contact-page-hero{padding-top:130px}.contact-page-hero h2{font-size:22px}.contact-details{grid-template-columns:1fr;gap:18px;padding-bottom:45px}.contact-details article{padding:25px}}

.inner-consultation{align-items:start}

.consultation-form .ginput_container select{height:auto!important;min-height:50px!important;line-height:1.4!important}

/* Original white client marks need a dark canvas. */
.client-card:has(img[src*="logo-superclub-original"]),.client-card:has(img[src*="logo-55club-original"]){background:#17191a;color:#fff;border-color:#17191a}

/* One compact contact layout shared by home and inner pages. */
.consultation-form .form-intro{margin-bottom:18px}
.consultation-form .gform_fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px 16px!important}
.consultation-form .gform_fields>.gfield{grid-column:span 1!important;padding:0!important;min-width:0}
.consultation-form .gform_fields>.gfield--type-select,.consultation-form .gform_fields>.gfield--type-textarea,.consultation-form .gform_fields>.gfield--type-consent,.consultation-form .gform_fields>.gfield--type-html{grid-column:1/-1!important}
.consultation-form .gfield_label{display:block!important;position:static!important;clip:auto!important;clip-path:none!important;width:auto!important;height:auto!important;overflow:visible!important;font-size:14px!important;line-height:1.4!important;margin:0 0 6px!important;padding:0!important}
.consultation-form .ginput_container{margin:0!important}
.consultation-form .ginput_complex{gap:10px!important}
.consultation-form .ginput_container input:not([type=checkbox]):not([type=radio]),.consultation-form .ginput_container select{height:44px!important;min-height:44px!important;padding:10px!important;line-height:1.3!important;box-shadow:none!important}
.consultation-form .ginput_container textarea{height:90px!important;min-height:90px!important;padding:10px!important;line-height:1.5!important;resize:vertical}
.consultation-form .gform_footer{margin:16px 0 0!important;padding:0!important;gap:0!important}
.consultation-form .gform_button{width:100%!important;margin:0!important;padding:15px 18px!important;font-size:15px!important}
.consultation-form .gfield--type-consent .gfield_label{display:none!important}
.consultation-form .gfield_consent_label{font-size:13px!important;line-height:1.5!important}
@media(max-width:760px){.consultation-form .gform_fields{grid-template-columns:1fr!important;gap:12px!important}.consultation-form .gform_fields>.gfield{grid-column:1/-1!important}}

.consultation-form .ginput_container_name.ginput_complex{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
.consultation-form .ginput_container_name.ginput_complex>span{width:auto!important;margin:0!important;padding:0!important;min-width:0}
.consultation-form .ginput_container.ginput_container_name input:not([type=checkbox]):not([type=radio]){font-size:14px!important;padding:10px 8px!important;width:100%!important}
.consultation-form .gfield_required{margin-left:4px!important}
.consultation-form .gform_required_legend{display:none}

.consultation-form .gfield_required_text{font-size:0!important;display:inline!important}
.consultation-form .gfield_required_text::after{content:'*';font-size:13px;color:#b83228}

/* Full-width operational office map on the contact page. */
.contact-location-map{width:100%;margin:0;background:#e8e8e3}
.contact-location-map iframe{display:block;width:100%;height:480px;border:0}
@media(max-width:760px){.contact-location-map iframe{height:360px}}

/* Accoglienza: cinematic rhythm and clear paths to consultation. */
.accoglienza-refresh .eyebrow{font-size:13px;letter-spacing:1.5px;line-height:1.7}
.accoglienza-refresh .service-hero{position:relative;min-height:720px;grid-template-columns:1fr 1.1fr;background:#101214}
.accoglienza-refresh .service-hero-copy{position:relative;z-index:1;padding:65px 9% 65px 15%}
.accoglienza-refresh .service-hero-note{color:#babdb9;font-size:17px;line-height:1.6;max-width:320px;margin:28px 0 0}
.accoglienza-refresh .service-hero h1{font-size:clamp(48px,5.1vw,78px);margin:20px 0 30px}
.accoglienza-refresh .service-hero-image{position:relative}
.accoglienza-refresh .service-hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10121444,transparent 40%),linear-gradient(0deg,#10121466,transparent 65%);pointer-events:none}
.accoglienza-refresh .service-hero-image img{object-position:60% center}
.service-hero-phone{display:flex;align-items:center;gap:10px;margin:22px 0 0;font-size:15px;color:#efefea}
.service-hero-phone:hover{color:var(--red)}
.service-hero-reassurance{display:flex;gap:9px;color:#bfc3bd;font-size:14px;margin-top:18px}
.service-hero-reassurance .bi{color:var(--red)}
.accoglienza-refresh .service-jump{gap:10px;padding-top:25px;border-top:1px solid #0002}
.accoglienza-refresh .service-jump a{border-radius:50px;background:transparent;padding:12px 20px;transition:background .2s,color .2s}
.accoglienza-refresh .service-jump a:last-child{background:#202322;color:#fff;border-color:#202322}
.accoglienza-refresh .service-context{position:relative;isolation:isolate;overflow:hidden;background:#15191b;color:#f4f4ef}
.accoglienza-refresh .service-context:before{content:'';position:absolute;z-index:-1;width:800px;height:800px;right:-300px;top:-240px;border-radius:50%;background:radial-gradient(circle,#ed423626,transparent 66%);animation:was-service-glow 16s ease-in-out infinite alternate}
@keyframes was-service-glow{to{transform:translate(-150px,220px)}}
.accoglienza-refresh .service-section-heading{font-size:17px;line-height:1.85}
.accoglienza-refresh .service-section h2{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:clamp(38px,4.3vw,60px);line-height:1.05;text-transform:uppercase;letter-spacing:-.7px}
.accoglienza-refresh .service-context .service-section-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:55px;max-width:none;color:#bdc2bd}
.accoglienza-refresh .service-context .service-section-heading>.eyebrow{grid-column:1/-1;color:#bdc2bd;margin-top:0}
.accoglienza-refresh .service-context h2{color:#fff}
.accoglienza-refresh .service-card-grid{gap:18px}
.accoglienza-refresh .service-card{position:relative;min-height:290px;background:#23282b;border:1px solid #ffffff15;padding:30px;display:flex;flex-direction:column;transition:transform .3s,border-color .3s;overflow:hidden}
.accoglienza-refresh .service-card:hover{transform:translateY(-5px);border-color:#ed423677}
.accoglienza-refresh .service-card>.bi{display:grid;place-items:center;width:52px;height:52px;font-size:26px;background:#ffffff0a;border:1px solid #ffffff1c;border-radius:50%;margin-bottom:25px}
.accoglienza-refresh .service-card h3{font-size:26px;color:#fff;margin:0 0 14px}
.accoglienza-refresh .service-card p{color:#c3c8c4;font-size:16px;line-height:1.7}
.accoglienza-refresh .service-card:nth-child(1),.accoglienza-refresh .service-card:nth-child(2){background:linear-gradient(#10121480,#101214f0),url('assets/sicurezza.jpg') center/cover}
.accoglienza-refresh .service-card:nth-child(2){background-image:linear-gradient(#10121480,#101214f0),url('../../uploads/2026/10/accoglienza-congressi-convegni-accrediti-evento.jpg')}
.accoglienza-refresh .service-card-contact{background:#ed4236;justify-content:space-between;border-color:#ed4236}
.accoglienza-refresh .service-card-contact .eyebrow{color:#fff;margin:0 0 18px;font-size:12px}
.accoglienza-refresh .service-card-contact h3{font:600 36px/1.1 'Barlow Condensed',sans-serif;text-transform:uppercase}
.accoglienza-refresh .service-card-contact .button{background:#121415;border:0;font-size:14px;padding:16px;gap:12px;justify-content:space-between;margin-top:20px}
.accoglienza-refresh #cosa-comprende-servizio{padding-top:95px;padding-bottom:95px}
.accoglienza-refresh .service-wide-copy{max-width:none;display:grid;grid-template-columns:1fr 1.15fr;column-gap:65px;align-items:start}
.accoglienza-refresh .service-wide-copy .eyebrow{grid-column:1/-1;color:#626860;margin-top:0}
.accoglienza-refresh .service-wide-copy h2{grid-column:1;grid-row:2/5;position:sticky;top:130px}
.accoglienza-refresh .service-wide-copy>p:not(.eyebrow),.accoglienza-refresh .service-wide-copy>a{grid-column:2;margin-top:0}
.accoglienza-refresh .text-link{display:inline-flex;align-items:center;gap:18px;color:#b72f25;font-size:16px;font-weight:500;line-height:1.5;border-bottom:1px solid #b72f2544;padding-bottom:10px}
.accoglienza-refresh .service-mid-cta{position:relative;overflow:hidden;background:radial-gradient(ellipse at 20% 110%,#fd705a,transparent 60%),#dc382e;padding-top:55px;padding-bottom:55px}
.accoglienza-refresh .service-mid-cta h2{font:600 clamp(38px,4vw,56px)/1.05 'Barlow Condensed',sans-serif;text-transform:uppercase}
.accoglienza-refresh #faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start;padding-top:95px;padding-bottom:95px}
.accoglienza-refresh #faq .service-section-heading{margin:0;color:#555}
.accoglienza-refresh #faq .eyebrow{margin-top:0}
.service-faq-contact{margin-top:30px;padding:28px;background:#e7e9e2;border-left:3px solid var(--red)}
.service-faq-contact>.bi{color:var(--red);font-size:28px}
.service-faq-contact h3{font-size:23px;line-height:1.3;margin:14px 0}
.accoglienza-refresh .service-faq-contact p{font-size:16px;line-height:1.65}
.accoglienza-refresh .service-faq-contact a{font-size:15px}
.accoglienza-refresh .service-faq-list{border:0;display:grid;gap:12px}
.accoglienza-refresh .service-faq{background:#fff;border:1px solid #dfe2da;transition:border-color .2s,box-shadow .2s}
.accoglienza-refresh .service-faq summary{padding:24px;font-size:18px;font-weight:500;line-height:1.5;gap:18px}
.accoglienza-refresh .service-faq summary>.bi{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#f4f4ef;font-size:16px;transition:transform .2s}
.accoglienza-refresh .service-faq:hover,.accoglienza-refresh .service-faq[open]{border-color:#ed423677;box-shadow:0 8px 30px #20232208}
.accoglienza-refresh .service-faq[open]{border-left:3px solid var(--red)}
.accoglienza-refresh .service-faq-answer{padding:0 24px 24px}
.accoglienza-refresh .service-faq-answer p{font-size:16px;line-height:1.8;margin:0}
.accoglienza-refresh .service-faq summary:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.accoglienza-refresh .service-examples{background:#e7e9e2}
.accoglienza-refresh .service-examples>.service-container>.service-section-heading{max-width:900px}
.accoglienza-refresh .service-example{gap:0;background:#f8f8f4;border:1px solid #d8ddd2;align-items:stretch;margin-top:28px}
.accoglienza-refresh .service-example-copy{padding:38px}
.accoglienza-refresh .service-example h3{font:600 36px/1.1 'Barlow Condensed',sans-serif;text-transform:uppercase}
.accoglienza-refresh .service-example-copy p{font-size:16px;line-height:1.8}
.accoglienza-refresh .service-example-image{overflow:hidden;min-height:440px}
.accoglienza-refresh .service-example-image img{height:100%;min-height:440px;transition:transform .7s}
.accoglienza-refresh .service-example:hover img{transform:scale(1.025)}
.accoglienza-refresh .inner-consultation{background:#15191b;color:#fff;border:0;position:relative}
.accoglienza-refresh .consultation-copy>.eyebrow,.accoglienza-refresh .consultation-copy>p:not(.eyebrow),.accoglienza-refresh .consultation-phone span{color:#bfc5be}
.accoglienza-refresh .consultation-copy .consultation-free{color:#f4f4ef!important}
.accoglienza-refresh .consultation-form{color:#202122;border:0;border-top:4px solid var(--red);box-shadow:0 20px 60px #0002}
.accoglienza-refresh .contact-email{display:block;margin-top:25px;font-size:15px;overflow-wrap:anywhere;color:#bfc5be}
@media(max-width:1000px){.accoglienza-refresh .service-context .service-section-heading{gap:25px}.accoglienza-refresh #faq{gap:30px;grid-template-columns:1fr 1.15fr}.accoglienza-refresh .service-example-copy{padding:28px}.accoglienza-refresh .service-wide-copy{gap:30px}}
@media(max-width:760px){.accoglienza-refresh .service-hero{grid-template-columns:1fr;min-height:0}.accoglienza-refresh .service-hero-copy{padding:42px 7%}.accoglienza-refresh .service-hero h1{font-size:clamp(48px,11vw,68px)}.accoglienza-refresh .service-hero-note{margin-top:20px}.accoglienza-refresh .service-hero-image{height:330px;min-height:0}.accoglienza-refresh .service-context .service-section-heading,.accoglienza-refresh .service-wide-copy,.accoglienza-refresh #faq{display:block}.accoglienza-refresh .service-context .service-section-heading{margin-bottom:30px}.accoglienza-refresh .service-wide-copy h2{position:static}.accoglienza-refresh #cosa-comprende-servizio,.accoglienza-refresh #faq{padding-top:55px;padding-bottom:55px}.accoglienza-refresh .service-card-grid{grid-template-columns:1fr}.accoglienza-refresh .service-card{min-height:0;padding:26px}.accoglienza-refresh .service-card-contact{min-height:260px}.accoglienza-refresh .service-faq-list{margin-top:30px}.accoglienza-refresh .service-faq summary{padding:20px;font-size:17px}.accoglienza-refresh .service-faq-answer{padding:0 20px 20px}.accoglienza-refresh .service-example{display:flex;flex-direction:column}.accoglienza-refresh .service-example-image,.accoglienza-refresh .service-example:nth-of-type(even) .service-example-image{order:-1;min-height:0;height:280px}.accoglienza-refresh .service-example-image img{min-height:0;height:280px}.accoglienza-refresh .service-example-copy{padding:26px}.accoglienza-refresh .service-example h3{font-size:32px}.accoglienza-refresh .service-jump a{font-size:14px;padding:10px 15px}.accoglienza-refresh .service-section h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){.accoglienza-refresh .service-context:before{animation:none}.accoglienza-refresh .service-card,.accoglienza-refresh .service-example-image img{transition:none}.accoglienza-refresh .service-card:hover,.accoglienza-refresh .service-example:hover img{transform:none}}

/* Keep photographic cards inside the border, with a uniform edge. */
.accoglienza-refresh .service-card:nth-child(1),.accoglienza-refresh .service-card:nth-child(2){background-clip:padding-box;border-color:#383e41}
.accoglienza-refresh .service-card:nth-child(1):hover,.accoglienza-refresh .service-card:nth-child(2):hover{border-color:#924038}

/* Shared navigation remains available throughout page scrolling. */
.site-header{position:fixed;inset:0 0 auto;z-index:100;box-shadow:0 8px 24px #0002}
html{scroll-padding-top:122px}
.contact-anchor{scroll-margin-top:0}
html:has(body.admin-bar){scroll-padding-top:154px}
@media(max-width:782px){html:has(body.admin-bar){scroll-padding-top:168px}}
@media(max-width:600px){html{scroll-padding-top:104px}html:has(body.admin-bar){scroll-padding-top:150px}#wpadminbar{position:fixed}}

/* Four operational cards leave a wide consultation panel. */
.accoglienza-refresh .card-count-4 .service-card-contact{grid-column:span 2}
@media(max-width:1000px){.accoglienza-refresh .card-count-4 .service-card-contact{grid-column:1/-1}}
@media(max-width:760px){.accoglienza-refresh .card-count-4 .service-card-contact{grid-column:auto}}

/* Pillar: an editorial service guide, distinct from the cinematic home. */
.pillar-page{background:#f4f4ef;color:#202322}
.pillar-page .eyebrow{font-size:12px;letter-spacing:1.4px;line-height:1.7;color:#626961}
.pillar-page h1,.pillar-page h2,.pillar-page h3{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-weight:600}
.pillar-page h2{font-size:clamp(38px,4.2vw,58px);line-height:1.08;letter-spacing:-.5px;margin:20px 0 25px}
.pillar-page p{font-size:17px;line-height:1.8}
.pillar-page .text-link{color:#ac3027;border-color:#ac302744;gap:20px;font-size:15px;font-weight:500}
.pillar-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center;padding-top:180px;padding-bottom:65px}
.pillar-hero h1{font-size:clamp(52px,5.8vw,86px);line-height:1.02;letter-spacing:-1.3px;margin:25px 0}
.pillar-hero .pillar-lead{max-width:520px;color:#626961;font-size:18px}
.pillar-hero-actions{display:flex;flex-wrap:wrap;gap:25px;align-items:center}
.pillar-hero-actions .button{margin:0;gap:22px;color:#fff}
.pillar-hero-visual{position:relative;margin:0;padding:0 0 25px 25px}
.pillar-hero-visual:before{content:'';position:absolute;inset:25px 25px 0 0;border:1px solid #c9d0c3}
.pillar-hero-visual img{position:relative;display:block;width:100%;height:460px;object-fit:cover;object-position:60% center}
.pillar-hero-visual figcaption{position:absolute;left:0;bottom:0;display:flex;align-items:center;gap:12px;padding:18px 24px;background:#171b1c;color:#fff;font-size:14px}
.pillar-hero-visual .bi{color:var(--red)}
.pillar-index{display:flex!important;flex-wrap:wrap;gap:10px;padding:22px 0;border-top:1px solid #cdd2c6;border-bottom:1px solid #cdd2c6}
.pillar-index a{color:#3c433c;font-size:14px;padding:10px 16px;background:#e8ebe2;border-radius:40px}
.pillar-index a:hover{background:#202322;color:#fff}
.pillar-index a:last-child{background:#202322;color:#fff}
.pillar-intro{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-top:65px;padding-bottom:65px}
.pillar-intro .eyebrow{padding-top:8px}
.pillar-intro p:not(.eyebrow){font-size:23px;line-height:1.6;margin:0}
.pillar-choice{padding:75px 0;background:#e7eae1}
.pillar-section-title{max-width:850px;margin-bottom:35px}
.pillar-section-title p{color:#626961}
.pillar-section-title h2{margin-top:20px}
.pillar-table-wrap{border:1px solid #ccd2c5;overflow-x:auto}
.pillar-table{width:100%;border-collapse:collapse;table-layout:fixed;background:#f7f8f3;font-size:16px;line-height:1.7}
.pillar-table th,.pillar-table td{padding:25px;vertical-align:top;text-align:left;border-bottom:1px solid #ccd2c5}
.pillar-table thead{background:#202627;color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.8px}
.pillar-table thead th{font-weight:500}
.pillar-table tbody th{font-weight:500;font-size:18px;width:30%}
.pillar-table tbody td{color:#596153}
.pillar-table tbody tr:last-child th,.pillar-table tbody tr:last-child td{border-bottom:0}
.pillar-table a{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#a92f25;font-size:15px;border-bottom:1px solid #cfb5a9;padding:5px 0;margin-bottom:8px}
.pillar-table a:last-child{margin:0}
.pillar-guidance{display:flex;align-items:center;gap:12px;font-size:15px!important;color:#4c5747;margin:25px 0 0}
.pillar-guidance>.bi{font-size:23px;color:#b33228;flex-shrink:0}
.pillar-guidance a{white-space:nowrap;color:#a52c23;text-decoration:underline}
.pillar-overview{padding-top:85px;padding-bottom:85px}
.pillar-overview>.pillar-section-title{max-width:1000px;margin-bottom:45px}
.pillar-overview>.pillar-section-title h2{font-size:clamp(34px,3.6vw,50px)}
.pillar-services{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.pillar-service{background:#fff;border:1px solid #dfe2d8;display:flex;flex-direction:column}
.pillar-service-image{height:230px;position:relative;overflow:hidden;background:#222}
.pillar-service-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.pillar-service:hover .pillar-service-image img{transform:scale(1.03)}
.pillar-service-image>span{position:absolute;right:22px;bottom:20px;display:grid;place-items:center;background:#15191be6;color:#fff;border:1px solid #ffffff4d;border-radius:50%;width:54px;height:54px;font-size:25px}
.pillar-service-copy{padding:30px;display:flex;flex:1;flex-direction:column;align-items:flex-start}
.pillar-service-copy .eyebrow{font-size:11px;line-height:1.8;margin:0;color:#a3342a}
.pillar-service-copy h3{font-size:36px;line-height:1.1;margin:15px 0 20px}
.pillar-service-copy p:not(.eyebrow){font-size:16px;line-height:1.8;color:#626961;margin:0 0 20px}
.pillar-service-copy .text-link{margin-top:auto}
.pillar-process{padding:80px 0;background:#171c1e;color:#f4f4ef}
.pillar-process .eyebrow{color:#bfc8b9}
.pillar-process ol{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin:40px 0 35px;list-style:none;padding:0}
.pillar-process li{border-top:1px solid #ffffff29;padding-top:25px}
.pillar-step-number{font-size:14px;color:#f27361;font-variant-numeric:tabular-nums}
.pillar-process h3{font-size:28px;line-height:1.15;margin:18px 0}
.pillar-process p{font-size:15px;color:#bcc5b8;line-height:1.8}
.pillar-process .button{color:#fff;gap:25px}
.pillar-clients{padding-top:70px;padding-bottom:70px}
.pillar-clients .clients-grid{grid-template-columns:repeat(3,1fr);gap:15px;margin-top:30px}
.pillar-clients .client-card{padding:22px}
.pillar-clients .client-card img{width:150px;height:70px}
.pillar-clients .client-card h3{font-family:'DM Sans',sans-serif;text-transform:none;font-size:14px;font-weight:500;margin-top:15px}
.pillar-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;padding-top:60px;padding-bottom:85px;border-top:1px solid #cdd2c6;align-items:start}
.pillar-faq>.pillar-section-title{position:sticky;top:155px;margin:0}
.pillar-faq .service-faq-list{display:grid;gap:12px;border:0}
.pillar-faq .service-faq{background:#fff;border:1px solid #dfe2d8}
.pillar-faq .service-faq summary{padding:22px;font-size:18px;font-weight:500;line-height:1.5}
.pillar-faq .service-faq summary>.bi{font-size:16px;transition:transform .2s}
.pillar-faq .service-faq[open]{border-left:3px solid #d13c30}
.pillar-faq .service-faq-answer{padding:0 22px 22px}
.pillar-faq .service-faq-answer p{font-size:16px;color:#626961;margin:0;line-height:1.8}
.pillar-faq summary:focus-visible{outline:2px solid var(--red);outline-offset:3px}
@media(max-width:1000px){.pillar-hero{gap:30px}.pillar-hero-visual img{height:420px}.pillar-intro{gap:30px}.pillar-table th,.pillar-table td{padding:20px}.pillar-process ol{grid-template-columns:1fr 1fr}.pillar-faq{gap:30px}}
@media(max-width:760px){.pillar-hero{display:flex;flex-direction:column;align-items:stretch;padding-top:135px;padding-bottom:40px;gap:35px}.pillar-hero h1{font-size:clamp(48px,11vw,66px)}.pillar-hero .pillar-lead{font-size:17px}.pillar-hero-visual img{height:280px}.pillar-hero-actions{gap:15px}.pillar-hero-actions .button{font-size:14px;padding:16px}.pillar-index{gap:8px;padding:18px 0}.pillar-index a{font-size:13px;padding:10px 13px}.pillar-intro{display:block;padding:35px 0}.pillar-intro p:not(.eyebrow){font-size:20px}.pillar-choice{padding:45px 0}.pillar-table{min-width:620px}.pillar-table th,.pillar-table td{padding:18px;font-size:15px}.pillar-guidance{display:block;font-size:15px!important}.pillar-guidance>.bi{margin-right:10px}.pillar-guidance a{display:inline-block;margin-top:8px}.pillar-overview{padding:50px 0}.pillar-services{grid-template-columns:1fr;gap:22px}.pillar-service-image{height:220px}.pillar-service-copy{padding:25px}.pillar-service-copy h3{font-size:33px}.pillar-process{padding:50px 0}.pillar-process ol{grid-template-columns:1fr;gap:22px}.pillar-process li{padding-top:20px}.pillar-clients{padding:45px 0}.pillar-clients .clients-grid{grid-template-columns:repeat(2,1fr);gap:12px}.pillar-clients .client-card{padding:18px 12px}.pillar-faq{display:block;padding:45px 0 55px}.pillar-faq>.pillar-section-title{position:static;margin-bottom:30px}.pillar-faq .service-faq summary{font-size:17px;padding:20px}.pillar-page h2{font-size:37px}.pillar-overview>.pillar-section-title h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.pillar-service-image img{transition:none}.pillar-service:hover .pillar-service-image img{transform:none}}
/* Shared home consultation keeps its original typography inside the guide. */
.pillar-page .consultation-copy h2{font-family:'DM Sans',Arial,sans-serif;text-transform:none;font-weight:500;font-size:clamp(42px,4.8vw,72px);line-height:1.05;letter-spacing:-2.5px;margin:30px 0}
.pillar-page .consultation-form h3{font-family:'DM Sans',Arial,sans-serif;text-transform:none;font-weight:500}
.pillar-table .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.pillar-page .consultation-copy h2{font-size:48px}}
@media(max-width:760px){.pillar-page .consultation-copy h2{font-size:46px;letter-spacing:-1.8px;margin:25px 0}}

/* A contained photographic pillar hero with a subtle scroll parallax. */
.pillar-page .pillar-hero{--pillar-drift:0px;position:relative;isolation:isolate;display:flex;align-items:center;width:100%;margin:0;height:720px;min-height:720px;padding:102px 7.6% 0;gap:0;background:#101416;color:#f4f4ef;overflow:hidden}
.pillar-hero-copy{position:relative;z-index:2;width:min(650px,62%);padding:45px 0}
.pillar-page .pillar-hero h1{font-size:clamp(54px,5.5vw,78px);line-height:1.02;margin:25px 0}
.pillar-page .pillar-hero .eyebrow{color:#c4ccc2}
.pillar-page .pillar-hero .pillar-lead{font-size:17px;color:#d1d5ce;max-width:540px;line-height:1.75}
.pillar-page .pillar-hero-visual{position:absolute;inset:0;margin:0;padding:0;z-index:0}
.pillar-page .pillar-hero-visual:before{display:none}
.pillar-page .pillar-hero-visual img{position:absolute;top:-90px;left:0;width:100%;height:calc(100% + 180px);max-width:none;object-fit:cover;object-position:center 45%;transform:translate3d(0,var(--pillar-drift),0);will-change:transform}
.pillar-page .pillar-hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0d1315f5 0%,#0d1315d9 30%,#0d13158c 55%,#0d131522 85%),linear-gradient(0deg,#10141680,transparent 50%);pointer-events:none}
.pillar-page .pillar-hero-visual figcaption{z-index:1;left:auto;right:7.6%;bottom:28px;background:#101416b3;border:1px solid #ffffff26;padding:13px 18px;font-size:13px}
.pillar-page .pillar-hero-actions{margin-top:28px;gap:25px}
.pillar-page .pillar-hero-actions .text-link{color:#f4f4ef;border-color:#ffffff55}
.pillar-page .pillar-index{padding-top:25px;padding-bottom:25px;border-top:0}
@media(max-width:1000px){.pillar-hero-copy{width:70%}.pillar-page .pillar-hero h1{font-size:64px}}
@media(max-width:760px){.pillar-page .pillar-hero{height:auto;min-height:680px;padding:100px 7% 45px}.pillar-hero-copy{width:100%;padding:25px 0}.pillar-page .pillar-hero h1{font-size:clamp(46px,10.8vw,60px)}.pillar-page .pillar-hero .pillar-lead{font-size:16px;line-height:1.7}.pillar-page .pillar-hero-visual img{object-position:65% center}.pillar-page .pillar-hero-visual:after{background:linear-gradient(90deg,#0d1315e8,#0d1315b3),linear-gradient(0deg,#10141688,transparent)}.pillar-page .pillar-hero-visual figcaption{right:7%;bottom:18px;padding:9px 13px;font-size:12px}.pillar-page .pillar-hero-actions{gap:15px;margin-top:23px}.pillar-page .pillar-hero-actions .button{font-size:13px;padding:15px;gap:15px}}
@media(max-width:380px){.pillar-page .pillar-hero{min-height:740px}}
@media(prefers-reduced-motion:reduce){.pillar-page .pillar-hero-visual img{transform:none;will-change:auto}}

/* News: one editorial feature, followed by a three-column reading grid. */
.news-archive,.news-single{background:#f4f4ef;color:#202322}
.news-archive-intro{padding:190px 7.6% 115px;position:relative;z-index:0;color:#f4f4ef}
.news-archive-intro:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 85% 10%,#442925,#161b1d 65%)}
.news-archive-intro .eyebrow{color:#c6cac3;font-size:12px;letter-spacing:1.5px}
.news-archive-intro h1{font:600 clamp(54px,6.6vw,92px)/1.03 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:-1px;margin:24px 0}
.news-archive-intro>p:not(.eyebrow){max-width:650px;font-size:18px;line-height:1.8;color:#c0c6bc;margin:0}
.news-archive-content{padding-bottom:70px}
.news-feature{position:relative;margin-top:-60px;display:grid;grid-template-columns:1.12fr 1fr;background:#fff;border:1px solid #dce0d6;box-shadow:0 20px 55px #17201a0c;overflow:hidden}
.news-feature-image{display:block;min-height:460px;overflow:hidden;background:#232829}
.news-feature-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s}
.news-feature:hover .news-feature-image img{transform:scale(1.025)}
.news-feature-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:38px}
.news-feature-copy .news-feature-label{margin:0 0 24px;font-size:11px;letter-spacing:1.6px;color:#a63127}
.news-article-meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:#6c736a;font-size:11px;line-height:1.6;letter-spacing:.6px;text-transform:uppercase}
.news-article-meta>span:first-child{color:#a63127}
.news-article-meta>*+*:before{content:'';display:inline-block;width:3px;height:3px;background:#a4aa9d;border-radius:50%;vertical-align:middle;margin-right:12px}
.news-feature h2{font:600 clamp(30px,3.1vw,43px)/1.08 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:17px 0 16px;letter-spacing:-.4px}
.news-excerpt{font-size:16px;line-height:1.8;color:#62695e;margin:0 0 20px}
.news-archive .text-link,.news-single .text-link{color:#b03026;border-color:#b0302644;font-size:14px;font-weight:500;gap:22px}
.news-all{padding-top:65px}
.news-all-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}
.news-all-heading .eyebrow{font-size:11px;letter-spacing:1.5px;color:#757d70;margin:0 0 15px}
.news-all-heading h2{font:600 clamp(34px,3.8vw,50px)/1.1 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0}
.news-all-heading>p{font-size:14px;color:#62695e}
.news-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}
.news-editorial-card{background:#fff;border:1px solid #dce0d6;display:flex;flex-direction:column;min-width:0}
.news-editorial-image{display:block;aspect-ratio:1.5;overflow:hidden;background:#232829}
.news-editorial-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.news-editorial-card:hover img{transform:scale(1.04)}
.news-editorial-copy{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:25px}
.news-editorial-copy .news-article-meta{font-size:10px;gap:7px 10px}
.news-editorial-copy h3{font:600 28px/1.12 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:17px 0 15px}
.news-editorial-copy .news-excerpt{font-size:15px;line-height:1.75;margin-bottom:20px}
.news-editorial-copy .text-link{margin-top:auto;font-size:13px;width:100%;justify-content:space-between;border-top:1px solid #dce0d6;border-bottom:0;padding-top:18px;padding-bottom:0}
.news-archive .pagination{display:block;margin:50px 0 0}
.news-archive .pagination .nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;align-items:center}
.news-archive .page-numbers{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:44px;min-height:44px;padding:10px 16px;background:#fff;border:1px solid #d3d9cc;font-size:14px}
.news-archive .page-numbers.current{background:#202627;border-color:#202627;color:#fff}
.news-archive a.page-numbers:hover{border-color:#b03026;color:#b03026}
.news-archive .screen-reader-text,.news-single .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.news-archive-cta h2{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-weight:600;font-size:clamp(34px,3.5vw,48px)}
.news-single{padding-bottom:70px}
.news-single-heading{position:relative;inset:auto;z-index:auto;height:auto;display:block;background:transparent;border:0;padding:170px 0 40px;color:#202322}
.news-back-link{display:inline-flex;gap:12px;align-items:center;font-size:14px;color:#7a8273;margin-bottom:28px}
.news-back-link:hover{color:#b03026}
.news-single-heading h1{font:600 clamp(40px,5.4vw,74px)/1.04 'Barlow Condensed',sans-serif;text-transform:uppercase;max-width:1000px;margin:24px 0 0;letter-spacing:-.7px}
.news-single-cover{overflow:hidden;margin-bottom:60px}
.news-single-cover img{display:block;width:100%;height:auto;object-fit:contain}
.news-single-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:65px;align-items:start}
.news-single-sidebar{position:sticky;top:160px;padding:28px;background:#e7ebe0;border-top:3px solid var(--red)}
.news-single-sidebar .eyebrow{font-size:10px;letter-spacing:1px;line-height:1.8;color:#66735e}
.news-single-sidebar h2{font:600 31px/1.1 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:18px 0}
.news-single-sidebar p:not(.eyebrow){font-size:15px;line-height:1.7;color:#5e6955}
.news-single-sidebar .button{font-size:12px;padding:14px 13px;gap:15px;color:#fff;display:flex;justify-content:space-between}
.news-single-pillar{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:#a53027;margin-top:22px;padding-top:17px;border-top:1px solid #cad4bf}
.news-single-body{font-size:18px;line-height:1.85;color:#4d5548;min-width:0}
.news-single-body>:first-child{margin-top:0}
.news-single-body h2{font:600 36px/1.12 'Barlow Condensed',sans-serif;text-transform:uppercase;color:#202322;margin:45px 0 20px}
.news-single-body h3{font-size:23px;line-height:1.3;font-weight:500;color:#202322;margin:30px 0 18px}
.news-single-body strong{color:#252d21}
.news-single-body a{color:#ad3026;text-decoration:underline;text-underline-offset:3px}
.news-single-body ul,.news-single-body ol{padding-left:24px}
.news-single-body li{padding-left:4px;margin-bottom:10px}
.news-single-body blockquote{margin:30px 0;padding:20px 25px;border-left:3px solid var(--red);background:#e8ecdf}
.news-single-body table{display:block;max-width:100%;overflow:auto;border-collapse:collapse}
.news-single-body td,.news-single-body th{padding:12px;border:1px solid #d1d7c8}
/* Shared article navigation: readable titles and compact cover thumbnails. */
.news-single-navigation{display:block;padding-top:40px;margin-top:55px;border-top:1px solid #d3d9ca;color:#202322}
.news-adjacent-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.news-adjacent-heading h2{font:600 36px/1.1 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0;color:#202322}
.news-adjacent-all{display:inline-flex;align-items:center;gap:12px;font-size:15px;color:#a53027}
.news-adjacent-all:hover{color:#202322}
.news-adjacent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.news-adjacent-card{display:grid;grid-template-columns:150px minmax(0,1fr);background:#fff;border:1px solid #dce0d5;color:#202322;min-height:170px;transition:border-color .2s,box-shadow .2s}
.news-adjacent-card:hover{border-color:#b03026;box-shadow:0 8px 24px #2023220a}
.news-adjacent-card:focus-visible,.news-adjacent-all:focus-visible{outline:2px solid #b03026;outline-offset:5px}
.news-adjacent-image{overflow:hidden;background:#e7ebe0}
.news-adjacent-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.news-adjacent-card:hover img{transform:scale(1.04)}
.news-adjacent-copy{padding:22px;align-self:center;min-width:0}
.news-adjacent-label{display:flex;align-items:center;gap:9px;font-size:12px;letter-spacing:.5px;text-transform:uppercase;color:#a53027;margin-bottom:12px}
.news-adjacent-copy h3{font-size:18px;font-weight:500;line-height:1.45;margin:0;color:#202322}
@media(max-width:1000px){.news-adjacent-card{grid-template-columns:115px minmax(0,1fr)}.news-adjacent-copy{padding:18px}.news-adjacent-copy h3{font-size:17px}}
@media(max-width:760px){.news-single-navigation{margin-top:35px;padding-top:30px}.news-adjacent-heading h2{font-size:30px}.news-adjacent-grid{grid-template-columns:1fr;gap:16px}.news-adjacent-card{min-height:145px}.news-adjacent-all{font-size:14px}}
@media(max-width:380px){.news-adjacent-card{grid-template-columns:90px minmax(0,1fr)}.news-adjacent-copy{padding:15px}.news-adjacent-label{font-size:10px}.news-adjacent-heading{align-items:flex-start;flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){.news-adjacent-card,.news-adjacent-image img{transition:none}.news-adjacent-card:hover img{transform:none}}
@media(max-width:1000px){.news-feature-copy{padding:30px}.news-feature-image{min-height:420px}.news-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-single-layout{grid-template-columns:230px minmax(0,1fr);gap:35px}.news-single-sidebar{padding:22px}}
@media(max-width:760px){.news-archive-intro{padding-top:140px;padding-bottom:85px}.news-archive-intro h1{font-size:clamp(48px,11vw,66px)}.news-archive-intro>p:not(.eyebrow){font-size:16px}.news-feature{grid-template-columns:1fr;margin-top:-45px}.news-feature-image{min-height:0;height:270px}.news-feature-copy{padding:26px}.news-feature-copy .news-feature-label{margin-bottom:18px}.news-feature h2{font-size:33px}.news-archive-grid{grid-template-columns:1fr;gap:25px}.news-all{padding-top:40px}.news-editorial-copy{padding:25px}.news-editorial-copy h3{font-size:30px}.news-all-heading h2{font-size:36px}.news-archive-content{padding-bottom:50px}.news-archive .page-numbers{padding:9px 12px}.news-single-heading{padding:135px 0 30px}.news-single-heading h1{font-size:clamp(39px,9vw,56px)}.news-single-cover{margin-bottom:35px}.news-single-cover img{height:auto}.news-single-layout{display:flex;flex-direction:column;gap:35px}.news-single-sidebar{order:1;position:static;width:100%;padding:25px}.news-single-body{font-size:17px}.news-single-body h2{font-size:32px;margin-top:35px}.news-single-body h3{font-size:22px}.news-single{padding-bottom:50px}}
@media(prefers-reduced-motion:reduce){.news-feature-image img,.news-editorial-image img{transition:none}.news-feature:hover .news-feature-image img,.news-editorial-card:hover img{transform:none}}

/* Privacy and cookie information, with a shared page shell and section index. */
.privacy-heading{padding-top:170px;padding-bottom:45px;color:#202322}
.privacy-heading .eyebrow{color:#a53027}
.privacy-heading h1{font:600 clamp(44px,5.8vw,78px)/1.05 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:22px 0 0;max-width:900px}
.privacy-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:45px;align-items:start;padding-bottom:80px}
.privacy-index{position:sticky;top:160px;padding:25px;background:#e7ebe0;border-top:3px solid var(--red)}
.privacy-index>p{font-size:18px;font-weight:500;margin:0 0 18px;color:#202322}
.privacy-index nav{display:block;color:#4d5548}
.privacy-index ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.privacy-index a{font-size:14px;line-height:1.45;display:block;color:#4d5548}
.privacy-index a:hover,.privacy-index a:focus-visible{color:#a53027;text-decoration:underline;text-underline-offset:3px}
.privacy-body{background:#fff;border:1px solid #dce0d5;padding:40px 45px;min-width:0;font-size:17px;line-height:1.85;color:#4d5548}
.privacy-body h2{font:600 32px/1.15 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:40px 0 18px;padding-top:28px;border-top:1px solid #e1e5db;color:#202322}
.privacy-body h2:first-child{margin-top:0;padding-top:0;border:0}
.privacy-body h3{font-size:21px;line-height:1.3;color:#202322;margin:26px 0 14px}
.privacy-body h4{font-size:18px;color:#202322;margin:22px 0 12px}
.privacy-body p{margin:0 0 18px}
.privacy-body strong{color:#202322}
@media(max-width:1000px){.privacy-layout{grid-template-columns:230px minmax(0,1fr);gap:25px}.privacy-body{padding:30px}}
@media(max-width:760px){.privacy-heading{padding-top:135px;padding-bottom:30px}.privacy-heading h1{font-size:clamp(42px,10vw,60px)}.privacy-layout{grid-template-columns:1fr;padding-bottom:50px}.privacy-index{position:static;padding:22px}.privacy-index ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}.privacy-body{padding:25px;font-size:16px}.privacy-body h2{font-size:29px}}
@media(max-width:400px){.privacy-index ul{grid-template-columns:1fr}}

/* Cyrillic uses a wider fallback font: keep all cinematic copy above the controls. */
html[lang^="ru"] .scene-copy h1,html[lang^="ru"] .scene-copy h2{font-size:clamp(38px,5.3vw,84px)}
@media(max-width:760px){html[lang^="ru"] .scene-copy h1,html[lang^="ru"] .scene-copy h2{font-size:clamp(36px,8.8vw,52px)}}

/* Keep the form result visible below the fixed navigation after submission. */
body .gform_anchor,body .gform_confirmation_wrapper,body .gform_validation_errors{scroll-margin-top:140px}
.admin-bar .gform_anchor,.admin-bar .gform_confirmation_wrapper,.admin-bar .gform_validation_errors{scroll-margin-top:172px}
@media(max-width:600px){body .gform_anchor,body .gform_confirmation_wrapper,body .gform_validation_errors{scroll-margin-top:104px}.admin-bar .gform_anchor,.admin-bar .gform_confirmation_wrapper,.admin-bar .gform_validation_errors{scroll-margin-top:150px}}
