/* v32 — Carbone, pino, pietra e lime. Avenir Next master v6. */
.concept-b{
 --bg:#f4f1e9;--ink:#202923;--muted:#536057;--line:#cdd4c7;
 --soft:#e6e0d3;--surface:#e6e0d3;--surface-strong:#c8dccb;
 --accent:#b5e56b;--contrast:#191f1c;
 --charcoal:#1b211e;--pine:#153e32;--mint:#c8dccb;
}
.concept-b .reviewbar{background:#e6e0d3;color:#384a3c}
.concept-b header.site-header{background:var(--charcoal);color:#f4f1e9;border-bottom:1px solid #ffffff14}
.site-header .header-main{min-height:106px}
.site-header .desktop-nav a:hover,.site-header .desktop-nav a[aria-current=page]{border-color:var(--accent)}
.header-contact{border-color:#6b7a6b;background:#ffffff04;transition:background .2s,border-color .2s}
.header-contact:hover{background:var(--accent);border-color:var(--accent);color:var(--charcoal)}
.concept-b .hero{background:linear-gradient(118deg,#1b211e 20%,#202e27 62%,#123d31 110%);color:#f4f1e9}
.concept-b .hero h1 em{color:#c2e990}
.concept-b .hero .eyebrow{color:#c2e990}
.concept-b .intro{color:#c5d0c5}
.concept-b .hero-visual{background:#1b211e;box-shadow:0 22px 60px #08150d30;border:1px solid #e2f3dc22}
.concept-b .hero-visual figcaption{background:#15251ee8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid #d9edd237}
.concept-b .hero-visual figcaption>span{color:var(--accent)}
.concept-b .hero-visual figcaption p{color:#e3e9db}
.concept-b .identity-strip{background:#c8dccb;border-top:0;border-bottom:1px solid #b5cbb9;color:#253f32}
.concept-b .identity-strip .wrap>span:first-child:before{color:#365a42}
.concept-b .button{background:#233c30;color:#f4f1e9;border:1px solid transparent;transition:background .18s,box-shadow .18s}
.concept-b .button>span{color:var(--accent)}
.concept-b .hero .button,.concept-b .phone-intro .button,.concept-b .hotel-hero .button{background:var(--accent);color:#1c3021;box-shadow:0 4px 18px #00000012}
.concept-b .hero .button>span,.concept-b .phone-intro .button>span,.concept-b .hotel-hero .button>span{color:#1c3021}
.concept-b .button:hover{background:#34543f;box-shadow:none;color:#fff}
.concept-b .hero .button:hover,.concept-b .phone-intro .button:hover,.concept-b .hotel-hero .button:hover{background:#cdf48e;color:#1c3021}
.concept-b .services article,.concept-b .it-extras article{background:linear-gradient(135deg,#eae5d8,#ddd9c8);border:1px solid #cdc9ba;box-shadow:0 10px 24px #182c1805}
.concept-b .service-number,.concept-b .it-index{color:#335b3e}
.concept-b .web-feature{background:linear-gradient(112deg,#223c30,#163d31);color:#f4f1e9;border:0}
.concept-b .web-feature p{color:#c8d5c5}
.concept-b .web-feature .eyebrow,.concept-b .web-process li>span{color:var(--accent)}
.concept-b .web-process li,.concept-b .web-feature .scope-note{border-color:#afc2a847}
.concept-b .web-platforms span{border-color:#a5c39866;background:#ffffff05;color:#e2ecd9}
.concept-b .web-feature .textlink{color:var(--accent)}
.concept-b .specialties{background:var(--bg)}
.concept-b .nfon{background:#1e2923;color:#f4f1e9}
.concept-b .nfon p{color:#ccd5c9}
.concept-b .kross{background:linear-gradient(145deg,#d4e5d5,#bdd5c5);color:#203e2e;border-top:0}
.concept-b .kross p{color:#385444}
.concept-b .partner-card{border:1px solid #263e2520}
.concept-b .method{background:#e6e0d3;border-top:1px solid #d2ccbd;border-bottom:1px solid #d2ccbd}
.concept-b .method-number{color:#3c6046;border-left-color:#7f9f75}
.concept-b .method-steps li{border-color:#afbea5}
.concept-b .personal{border:0}
.concept-b .brand-editorial img{box-shadow:0 15px 35px #17221a17}
/* Common light sections and readable form surfaces. */
.concept-b .phone-mobile,.concept-b .phone-hospitality,.concept-b .it-situations,
.concept-b .care-section,.concept-b .hotel-package,.concept-b .hotel-communication,
.concept-b .guest-extra,.concept-b .hotel-payments,.concept-b .hotel-infrastructure,
.concept-b .web-hotel,.concept-b .web-measure,.concept-b .contact-form-block,
.concept-b .legal-draft,.concept-b .legal-copy .legal-pending{background:#e6e0d3}
.concept-b .web-project{background:#e6e0d3;border:1px solid #cdc9ba}
.concept-b .hotel-minimum,.concept-b .prototype-note{background:#f4f1e9}
.concept-b .form-field input,.concept-b .form-field select,.concept-b .form-field textarea{background:#faf8f2;border-color:#99a990;color:#202923}
.concept-b .hotel-fields{border-color:#a4b59a}
/* Dark product and technical sections retain high contrast. */
.concept-b .phone-intro,.concept-b .hotel-hero{background:linear-gradient(115deg,#1b211e 25%,#1c352a 100%);color:#f4f1e9}
.concept-b .phone-ai,.concept-b .ai-section,.concept-b .time-machine,
.concept-b .hotel-direct,.concept-b .web-pricing,.concept-b .contact-fit{background:linear-gradient(115deg,#1b2921,#123e31);color:#f4f1e9}
.concept-b .it-method aside,.concept-b .hotel-support aside{background:#1b211e;color:#f4f1e9}
.concept-b .phone-intro .eyebrow,.concept-b .phone-ai .eyebrow,.concept-b .hotel-hero .eyebrow,
.concept-b .ai-section .eyebrow,.concept-b .web-pricing .eyebrow,.concept-b .contact-fit .eyebrow{color:var(--accent)}
.concept-b .tm-source{background:#ffffff06;border-color:#77927566}
.concept-b .tm-node{border-color:#829a7766}
.concept-b .tm-node.is-active{background:#66824a33;border-color:var(--accent)}
.concept-b .tm-buttons button{background:var(--accent);border-color:var(--accent);color:#1c3021}
.concept-b .tm-buttons button+button{background:transparent;color:var(--accent)}
/* A decisive closing section; no fluorescent full-width slab. */
.concept-b .contact{background:linear-gradient(110deg,#244333 0%,#163b2f 55%,#14271f 100%);color:#f4f1e9;border-top:1px solid #bbd59d38;padding-top:86px;padding-bottom:86px}
.concept-b .contact p,.concept-b .contact small{color:#c6d4be}
.concept-b .contact .eyebrow,.concept-b .contact-links a>span{color:var(--accent)}
.concept-b .contact a{border-color:#a7c19559}
.concept-b .contact a:hover{color:var(--accent);text-decoration:none}
.concept-b .contact-links a{transition:color .15s,border-color .15s}
.concept-b .contact-links a:hover{border-color:var(--accent)}
/* Logo always uses the light master on a solid dark surface. */
.concept-b .site-footer{background:#171d19;color:#edf1e6}
.site-footer .footer-top p{color:#b2c1ae}
.site-footer .footer-support{border-color:#6b846044}
.site-footer .footer-support .eyebrow{color:var(--accent)}
.site-footer .footer-remote-link{background:#ffffff06;border:1px solid #8395766b;color:#edf1e6}
.site-footer .footer-remote-link:hover{background:#ffffff10}
.site-footer .footer-remote-link span{color:var(--accent)}
.site-footer .footer-bottom{color:#afbdac;border-color:#6b846044}
.site-footer a:focus-visible{outline-color:var(--accent)}
.site-footer .brand-official img{width:190px}
.concept-b .brand-sample,.concept-b .brand-sample.dark{background:#1b211e;border-color:#344234}
.concept-b .brand-sample.dark{background:#0b0b0b}
.concept-b .site-header .mobile-menu nav{background:#202e26f7;color:#edf1e6;border:1px solid #8ca77c55;box-shadow:0 20px 40px #0005;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.site-header .mobile-menu nav a:hover{background:#ffffff0a}
.site-header .mobile-remote{border-color:#a5bd9566}
a:focus-visible,summary:focus-visible{outline-color:#426443}
.site-header a:focus-visible,.site-header summary:focus-visible{outline-color:var(--accent)}
@media(max-width:680px){.site-header .header-main{min-height:86px}.concept-b .contact{padding-top:55px;padding-bottom:55px}.concept-b .hero-visual{box-shadow:none}.site-footer .footer-top{padding-top:48px}}
@media(prefers-reduced-motion:reduce){.concept-b .button,.header-contact,.concept-b .contact-links a{transition:none}}
@media(prefers-reduced-transparency:reduce){.concept-b .hero-visual figcaption,.concept-b .site-header .mobile-menu nav{background:#1b2921;backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Inter is the claim family; served locally, without external requests. */
@font-face{font-family:BitfixInter;src:url('assets/rebranding-v32/Inter-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.site-header .desktop-nav a,.site-header .header-contact,.site-header .mobile-menu nav>a{font-family:BitfixInter,Arial,sans-serif;font-weight:400;font-size:14px;letter-spacing:.09em;text-transform:uppercase}
.site-header .desktop-nav{gap:27px}
.site-header .mobile-menu nav>a{font-size:15px;line-height:1.5}
.brand-official img{object-fit:contain;height:auto}
@media(max-width:1100px){.site-header .desktop-nav{gap:20px}}
