@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Syne:wght@600;700&display=swap');

/* Approved home direction. Portfolio sections retain their existing styles. */
.home-refined {
  --polish-bg: #0b0d10;
  --polish-surface: #141820;
  --polish-text: #f3f5f7;
  --polish-muted: #aab4c0;
  --polish-accent: #91caff;
  --polish-line: #303640;
  --polish-motion: 220ms;
  background: var(--polish-bg);
}
html[data-palette] body.home-refined {background:var(--polish-bg)}
.home-refined :is(.header,.hero,.expertise-section,.faq-layout,.about-layout,.contact-compact,.site-footer) {
  font-family: 'Manrope',sans-serif;
  color: var(--polish-text);
}
.home-refined :is(.hero,.expertise-section,.faq-layout,.about-layout,.contact-compact) :is(h1,h2,h3) {
  font-family: 'Syne',sans-serif;
  font-weight: 600;
  letter-spacing: -.045em;
  text-wrap: balance;
}
.home-refined :is(.hero,.expertise-section,.faq-layout,.about-layout,.contact-compact) em {color:var(--polish-accent)}
.home-refined .header {height:112px}
.home-refined .brand-name {font-family:'Manrope',sans-serif;font-size:11px;letter-spacing:1.3px}
.home-refined .header nav a {font-size:14px;color:var(--polish-muted)}
.home-refined .header nav a:is(:hover,[aria-current]) {color:var(--polish-accent)}
.home-refined .header nav .nav-contact {border-color:var(--polish-line)}
.home-refined .hero.hero-v2 {gap:56px;padding-block:64px 88px;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}
.home-refined .hero-v2 .eyebrow {font-size:12px;letter-spacing:1.4px;margin-bottom:28px;color:var(--polish-muted)}
.home-refined .hero-v2 h1 {font-size:clamp(64px,6.6vw,96px);font-weight:700;line-height:1.06;letter-spacing:-.055em;margin-bottom:28px}
.home-refined .hero-v2 h1 em {font-weight:700}
.home-refined .hero-v2 .hero-description {font-family:'Manrope',sans-serif;font-size:18px;font-weight:400;line-height:1.8;max-width:39ch;color:var(--polish-muted);text-wrap:pretty}
.home-refined .hero-v2 .hero-description strong {color:var(--polish-text);font-weight:600}
.home-refined .hero-actions {margin-top:32px;gap:12px}
.home-refined .action-pill {font-family:'Manrope',sans-serif;font-size:12px;min-height:52px;padding:13px 18px;border-color:var(--polish-line);transition:background var(--polish-motion),border-color var(--polish-motion),transform var(--polish-motion)}
.home-refined .action-fill {background:var(--polish-accent);border-color:var(--polish-accent);color:var(--polish-bg)}
.home-refined .action-fill:hover {background:#b9ddff}
.home-refined .action-outline {background:transparent;color:var(--polish-text)}
.home-refined .action-outline:hover {background:var(--polish-surface);border-color:#667587}
.home-refined .hero-signature {font-size:12px;line-height:1.7;margin-top:28px;color:var(--polish-muted)}
.home-refined .hero-signature>span {color:var(--polish-muted)}
.home-refined .hero-media {padding:0}
.home-refined .hero-media:before {display:none}
.home-refined .hero-media-shell.hero-product-media {background:transparent;padding:0;border:0;clip-path:none;aspect-ratio:1;overflow:hidden}
.home-refined .hero-product-media img {clip-path:none;mix-blend-mode:lighten;mask-image:linear-gradient(to bottom,#000 0%,#000 82%,transparent 100%);transition:transform 500ms ease}
.home-refined .hero-media:hover img {transform:scale(1.015)}

.home-refined .expertise-section {background:var(--polish-bg);border-color:var(--polish-line);padding-block:88px 96px}
.home-refined .expertise-section .expertise-heading {display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:64px;align-items:end;margin-bottom:40px}
.home-refined .expertise-section .expertise-heading .eyebrow {font-size:12px;letter-spacing:1.4px;color:var(--polish-muted);margin-bottom:20px}
.home-refined .expertise-section .expertise-heading h2 {font-size:clamp(38px,4.1vw,58px);line-height:1.15;max-width:19ch}
.home-refined .expertise-section .expertise-heading>p {font-size:16px;line-height:1.85;max-width:36ch;color:var(--polish-muted)}
.home-refined .expertise-section .expertise-grid {gap:24px}
.home-refined .expertise-section .expertise-card:nth-child(n) {padding:32px 28px 24px;min-height:344px;background:var(--polish-surface);border:1px solid var(--polish-line);border-radius:12px;box-shadow:none;transition:background var(--polish-motion),border-color var(--polish-motion),transform var(--polish-motion)}
.home-refined .expertise-section .expertise-card:before {display:none}
.home-refined .expertise-section .expertise-card:nth-child(n):is(:hover,:focus-visible) {background:#191e27;border-color:#70869c;transform:translateY(-3px);box-shadow:none}
.home-refined .expertise-section .expertise-icon {width:56px;height:56px;border:1px solid #404a57;border-radius:14px;background:transparent;margin-bottom:28px;color:var(--polish-accent)}
.home-refined .expertise-section .expertise-icon svg {width:30px;height:30px;stroke-width:1.5;animation:none;transition:transform var(--polish-motion)}
.home-refined .expertise-card:is(:hover,:focus-visible) .expertise-icon svg {transform:translateY(-3px)}
.home-refined .expertise-section .expertise-card h3 {font-size:28px;font-weight:600;line-height:1.2;min-height:68px;margin-bottom:18px;max-width:16ch}
.home-refined .expertise-section .expertise-card>p {font-size:16px;line-height:1.8;color:var(--polish-muted);margin-bottom:28px}
.home-refined .expertise-section .expertise-link {font-size:13px;min-height:44px;padding-top:18px;border-color:var(--polish-line);color:var(--polish-text)}
.home-refined .expertise-section .expertise-card:is(:hover,:focus-visible) .expertise-link {color:var(--polish-accent)}
.motion-ready .home-refined .expertise-card[data-reveal] {transition:opacity 420ms ease var(--reveal-delay,0ms),transform 420ms ease var(--reveal-delay,0ms),background var(--polish-motion),border-color var(--polish-motion)}

.home-refined #domande {background:var(--polish-bg);padding-block:88px}
.home-refined .faq-layout {gap:80px}
.home-refined .faq-layout h2 {font-size:clamp(36px,3.4vw,48px);line-height:1.18}
.home-refined .faq-layout .eyebrow,.home-refined .about-layout .eyebrow {font-size:12px;letter-spacing:1.4px;color:var(--polish-muted)}
.home-refined .faq-layout .section-intro {font-size:16px;line-height:1.8;color:var(--polish-muted)}
.home-refined .faq details {border-color:var(--polish-line)}
.home-refined .faq summary {font-size:17px;line-height:1.6;gap:24px;padding-block:24px}
.home-refined .faq summary span {color:var(--polish-muted)}
.home-refined .faq details p {font-size:16px;line-height:1.85;color:var(--polish-muted);padding-bottom:28px}
.home-refined .faq-layout .text-link,.home-refined .about-layout .text-link {font-size:14px;border-color:#657384}

.home-refined #chi-sono {background:var(--polish-surface);padding-block:88px}
.home-refined .about-layout {grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:80px;align-items:center}
.home-refined .about-photo {aspect-ratio:4/5;border-radius:12px;border:0;background:var(--polish-bg);overflow:hidden}
.home-refined .about-photo img {transform:scale(1.65);transform-origin:50% 65%;object-position:50% 65%}
.home-refined .about-layout h2 {font-size:clamp(36px,3.7vw,52px);line-height:1.15}
.home-refined .about .lead {font-size:19px;line-height:1.8;color:var(--polish-text);margin-top:28px}
.home-refined .about p:not(.eyebrow):not(.lead) {font-size:16px;line-height:1.85;color:var(--polish-muted);margin-top:22px}
.home-refined .about .skills {gap:8px;margin-block:28px}
.home-refined .about .skills span {font-size:12px;line-height:1.6;padding:7px 12px;background:var(--polish-bg);color:var(--polish-muted)}
.home-refined .contact.section {background:var(--polish-bg);padding-block:60px}
.home-refined .contact-compact h2 {font-size:36px;line-height:1.2}
.home-refined .contact-links a {font-size:18px;line-height:1.75;color:var(--polish-text)}
.home-refined .contact-links a:hover {color:var(--polish-accent)}
.home-refined .site-footer {background:var(--polish-bg);border-color:var(--polish-line)}
.home-refined .footer-top {border-color:var(--polish-line)}
.home-refined .footer-group h3 {font-family:'Manrope',sans-serif;font-size:12px}
.home-refined .footer-group>a {font-family:'Manrope',sans-serif;font-size:13px;color:var(--polish-muted)}
.home-refined .footer-base {font-size:12px;color:var(--polish-muted);border-color:var(--polish-line)}

@media(max-width:1100px) {
  .home-refined .hero.hero-v2 {gap:36px;padding-block:48px 72px}
  .home-refined .hero-v2 h1 {font-size:clamp(56px,6.6vw,74px)}
  .home-refined .hero-v2 .hero-description {font-size:17px}
  .home-refined .action-pill {font-size:12px;padding:12px 14px}
  .home-refined .expertise-section .expertise-heading {gap:36px}
  .home-refined .expertise-section .expertise-grid {gap:18px}
  .home-refined .expertise-section .expertise-card:nth-child(n) {padding:28px 22px 22px}
  .home-refined .expertise-section .expertise-card h3 {font-size:24px;min-height:58px}
  .home-refined .expertise-section .expertise-card>p {font-size:15px}
  .home-refined .about-layout {gap:48px}
  .home-refined .about-layout h2 {font-size:38px}
  .home-refined .faq-layout {gap:48px}
}
@media(min-width:761px) and (max-width:950px) {
  .home-refined .hero.hero-v2 {gap:28px}
  .home-refined .hero-v2 h1 {font-size:56px}
  .home-refined .hero-v2 .hero-description {font-size:17px}
  .home-refined .hero-actions {gap:10px}
  .home-refined .action-pill {font-size:11px;padding-inline:13px}
  .home-refined .expertise-section .expertise-heading {grid-template-columns:minmax(0,1fr);gap:22px}
  .home-refined .expertise-section .expertise-heading h2 {max-width:none}
  .home-refined .expertise-section .expertise-heading>p {max-width:60ch}
  .home-refined .expertise-section .expertise-card:nth-child(n) {padding:26px 20px 22px}
  .home-refined .expertise-section .expertise-card h3 {font-size:24px}
  .home-refined .about-layout {grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:36px}
  .home-refined .about .lead {font-size:18px}
  .home-refined .about-layout h2 {font-size:34px}
}
@media(max-width:760px) {
  .home-refined .header {height:92px}
  .home-refined .header nav.open {background:var(--polish-surface);border-color:var(--polish-line)}
  .home-refined .brand-name {font-size:10px;letter-spacing:1px}
  .home-refined .hero.hero-v2 {grid-template-columns:minmax(0,1fr);gap:28px;padding-block:32px 48px}
  .home-refined .hero-v2 .eyebrow {font-size:11px;margin-bottom:24px;letter-spacing:1px}
  .home-refined .hero-v2 h1 {font-size:clamp(44px,12.8vw,72px);line-height:1.08;margin-bottom:24px}
  .home-refined .hero-v2 .hero-description {font-size:17px;line-height:1.8;max-width:42ch}
  .home-refined .hero-actions {margin-top:28px;gap:12px}
  .home-refined .action-pill {font-size:12px;padding:13px 16px}
  .home-refined .hero-signature {font-size:12px;margin-top:24px}
  .home-refined .hero-media {width:100%;max-width:340px;margin-inline:auto}
  .home-refined .expertise-section {padding-block:56px 64px}
  .home-refined .expertise-section .expertise-heading {display:block;margin-bottom:32px}
  .home-refined .expertise-section .expertise-heading h2 {font-size:clamp(34px,9vw,48px);max-width:18ch}
  .home-refined .expertise-section .expertise-heading .eyebrow {font-size:11px;letter-spacing:1px;margin-bottom:20px}
  .home-refined .expertise-section .expertise-heading>p {font-size:16px;line-height:1.8;margin-top:24px;max-width:42ch}
  .home-refined .expertise-section .expertise-grid {gap:16px;grid-template-columns:minmax(0,1fr)}
  .home-refined .expertise-section .expertise-card:nth-child(n) {padding:28px 25px 22px;min-height:0}
  .home-refined .expertise-section .expertise-card h3 {font-size:28px;min-height:0;max-width:16ch;margin-bottom:18px}
  .home-refined .expertise-section .expertise-card>p {font-size:16px;margin-bottom:24px}
  .home-refined .expertise-section .expertise-icon {margin-bottom:24px}
  .home-refined #domande,.home-refined #chi-sono {padding-block:64px}
  .home-refined .faq-layout {gap:32px}
  .home-refined .faq-layout h2 {font-size:34px}
  .home-refined .faq-layout .eyebrow,.home-refined .about-layout .eyebrow {font-size:11px;letter-spacing:1px}
  .home-refined .faq summary {font-size:16px;min-height:72px;padding-block:22px}
  .home-refined .faq details p {font-size:16px}
  .home-refined .about-layout {grid-template-columns:minmax(0,1fr);gap:36px}
  .home-refined .about-photo {max-width:380px;aspect-ratio:1;width:100%;margin-inline:auto}
  .home-refined .about-photo img {transform:scale(1.55)}
  .home-refined .about-layout h2 {font-size:clamp(32px,8.8vw,42px)}
  .home-refined .about .lead {font-size:18px;line-height:1.8;margin-top:24px}
  .home-refined .about p:not(.eyebrow):not(.lead) {font-size:16px;margin-top:20px}
  .home-refined .contact.section {padding-block:40px}
  .home-refined .contact-compact {gap:20px}
  .home-refined .contact-compact h2 {font-size:32px}
  .home-refined .contact-links a {font-size:clamp(13px,3.9vw,17px)}
  .home-refined .footer-top {gap:16px}
  .home-refined .footer-base {font-size:12px;line-height:1.7}
}
@media(max-width:359px) {
  .home-refined .hero-v2 h1 {font-size:42px}
  .home-refined .brand-name {font-size:9px}
  .home-refined .hero-v2 .eyebrow {font-size:10px}
  .home-refined .action-pill {font-size:11px;padding-inline:14px}
  .home-refined .expertise-section .expertise-card:nth-child(n) {padding-inline:22px}
  .home-refined .expertise-section .expertise-card h3 {font-size:26px}
  .home-refined .about-layout h2 {font-size:30px}
}
@media(prefers-reduced-motion:reduce) {
  .home-refined .expertise-section .expertise-card:nth-child(n),
  .home-refined .expertise-section .expertise-card:nth-child(n):is(:hover,:focus-visible),
  .home-refined .expertise-card:is(:hover,:focus-visible) .expertise-icon svg,
  .home-refined .hero-media:hover img {transform:none;transition:none}
}

/* Always-visible service link affordance. */
.home-refined .expertise-section .expertise-link{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
