/* Scoped additions. All approved original rules remain in original.css. */
.brand-symbol{width:54px;height:54px;object-fit:contain;flex-shrink:0}
.about-image{transform:scaleX(-1)}
.pageintro{border-bottom:1px solid var(--line);background:#f7f7f6}
.inner-title{font-size:clamp(36px,3.5vw,54px);line-height:1.18;max-width:960px}
.intro-copy{max-width:850px;margin-top:24px;font-size:15px}
.inner-services{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.inner-service{border:1px solid var(--line);padding:30px;scroll-margin-top:125px}
.inner-service h2{font-size:30px;overflow-wrap:break-word}
.inner-service p{margin-top:18px;font-size:14px}
.service-list{list-style:none;padding:0;margin:22px 0 0;border-top:1px solid var(--line)}
.service-list li{padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}
.service-detail{display:grid;grid-template-columns:1.5fr 1fr;gap:90px}
.service-detail aside{padding:30px;border:1px solid var(--line);align-self:start}
.service-detail aside h2{font-size:30px}.service-detail aside p{margin-top:20px;font-size:14px}
.contact-main{display:grid;grid-template-columns:1fr 1.25fr;gap:65px;align-items:start}
.contact-main>div>p{margin-top:23px}.mailaddress{display:inline-block;margin-top:12px;color:#80613b;border-bottom:1px solid var(--gold);overflow-wrap:anywhere}
.contactform{background:#fff;border:1px solid var(--line);padding:30px}
.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.formgrid .full{grid-column:1/-1}
.contactform input,.contactform select,.contactform textarea{font-size:16px;min-height:44px}
.contactform textarea{min-height:145px}.consentline{display:flex;align-items:flex-start;gap:10px;margin:20px 0;font-size:12px}
.consentline input{width:17px;min-height:17px;margin-top:3px}.consentline a{text-decoration:underline}
.formnotice{padding:12px;border-left:2px solid var(--gold);background:#f7f7f6;font-size:12px}
.contactform .btn:disabled{cursor:not-allowed;background:#ded9d0;color:#50575d}.form-status{font-size:13px;margin-top:15px}
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.verification{color:#80613b}.legal a{text-decoration:underline}.legal{line-height:1.8}
.document{padding-top:20px}.document .wrap{max-width:1000px}.document h2{font-size:29px;margin:35px 0 15px}.document p{font-size:14px}
.identity-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.logo-card{padding:35px 25px;border:1px solid var(--line);display:flex;align-items:center;min-height:210px}.logo-card img{width:100%;height:auto}.logo-card.dark{background:var(--navy)}
.identity-note{font-size:13px;margin-top:20px}.rome-proof{width:min(750px,100%);height:auto;display:block;margin:45px auto 0}
.learn{min-height:35px}.learn:focus-visible,.btn:focus-visible,.audience:focus-visible{outline:2px solid var(--gold)}
@media(max-width:1150px){.header-inner{gap:15px}.brand-symbol{width:48px;height:48px}.contact-main{gap:35px}.service-detail{gap:40px}}
@media(max-width:800px){.brand-symbol{width:46px;height:46px}.inner-services{gap:20px}.service-detail,.contact-main{grid-template-columns:1fr}.service-detail aside{margin-top:10px}.nav{max-height:calc(100dvh - 88px);overflow-y:auto}.inner-title{font-size:40px}}
@media(max-width:540px){.inner-services,.identity-grid{grid-template-columns:1fr}.inner-service{padding:24px}.inner-service h2{font-size:28px}.formgrid{grid-template-columns:1fr}.formgrid>div{grid-column:1/-1}.contactform{padding:20px}.contact-main{gap:30px}.service-detail{gap:25px}.inner-title{font-size:36px}.intro-copy{font-size:14px}.footerlinks{flex-wrap:wrap;gap:24px}.legal{font-size:10px}.legal p{font-size:10px}.logo-card{min-height:180px}}
@media(max-width:400px){.brand-symbol{width:38px;height:38px}.brand{gap:7px}.menutoggle{padding:8px}.header-inner{gap:8px}}
@media(max-width:359px){.wrap{padding-left:16px;padding-right:16px}.brand-symbol{width:34px;height:34px}.brandname{font-size:20px}.brandname small{font-size:11.5px}.brandtag{font-size:5px}.header-inner{gap:6px}.language-switch{gap:2px}.menutoggle{font-size:0;width:36px;height:38px;justify-content:center}.menutoggle span{font-size:17px}.language-switch a{padding:8px 3px}}

/* Official horizontal logo supplied and confirmed by the client. */
.brand-approved{display:block;width:264px;height:auto;max-width:100%;object-fit:contain}
.footer-top .brand-approved{width:300px}
@media(max-width:1150px){.brand-approved{width:240px}}
@media(max-width:800px){.brand-approved{width:220px}}
@media(max-width:540px){.brand-approved{width:210px}.footer-top .brand-approved{width:280px}}
@media(max-width:400px){.brand-approved{width:195px}}
@media(max-width:359px){.brand-approved{width:175px}}
