:root{
  --do-bg:#f3f6ff;
  --do-surface:#ffffff;
  --do-surface-2:#f7f9ff;
  --do-ink:#0c1631;
  --do-muted:#4d5f82;
  --do-line:rgba(31,64,154,.14);
  --do-line-strong:rgba(31,64,154,.28);
  --do-blue:#305cff;
  --do-blue-2:#66a8ff;
  --do-navy:#09132d;
  --do-navy-2:#132a67;
  --do-shadow:0 22px 54px rgba(16,32,82,.085);
  --do-shadow-soft:0 12px 28px rgba(16,32,82,.055);
  --do-radius:24px;
  --do-radius-sm:18px;
  --do-max:1180px;
}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at top right, rgba(102,168,255,.20), transparent 30%),
    radial-gradient(circle at top left, rgba(48,92,255,.09), transparent 28%),
    linear-gradient(180deg, #fbfcff 0%, #f2f5fb 100%);
  color:var(--do-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
a{color:inherit}
img{max-width:100%;display:block}
.container{width:min(calc(100% - 32px), var(--do-max));margin-inline:auto}
.site-header{
  position:sticky; top:0; z-index:30;
  background:rgba(248,250,255,.78);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(13,35,90,.06);
}
.nav{min-height:84px; gap:18px}
.brand{display:flex; align-items:center; gap:12px; font-weight:800; letter-spacing:.01em; color:var(--do-navy)}
.brand-logo{width:40px; height:40px; object-fit:contain; border-radius:14px; box-shadow:0 10px 20px rgba(30,64,175,.10)}
.nav-links{gap:10px; align-items:center}
.nav-links a{
  color:var(--do-ink);
  font-weight:650;
  font-size:14px;
  padding:10px 14px;
  border-radius:999px;
  transition:.2s ease;
}
.nav-links a:hover,.nav-links a[aria-current="page"]{background:rgba(48,92,255,.08); color:var(--do-blue)}
.nav-links .nav-cta,.btn.primary,.mass-big-cta,.m2-cta{
  background:linear-gradient(135deg, var(--do-navy), var(--do-navy-2));
  color:#fff !important;
  border:none;
  box-shadow:0 16px 30px rgba(9,19,45,.16);
}
.nav-links .nav-cta:hover,.btn.primary:hover,.mass-big-cta:hover,.m2-cta:hover{transform:translateY(-1px); box-shadow:0 22px 36px rgba(9,19,45,.18)}
.menu-btn{
  border:1px solid var(--do-line);
  background:rgba(255,255,255,.86);
  color:var(--do-navy);
  border-radius:14px;
  box-shadow:var(--do-shadow-soft);
}
main section, main article.prose, .cta, .gallery{position:relative}
.page-hero,.m2-hero{padding:64px 0 28px}
.page-hero .container,.m2-hero .container{position:relative}
.eyebrow,.m2-kicker,.m2-section-label,.mass-kicker,.status,.value-pill,.m2-service-value,.m2-chip,.paper-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  line-height:1;
  letter-spacing:.18em;
  font-weight:800;
  text-transform:uppercase;
  color:var(--do-blue);
}
.m2-kicker,.m2-section-label,.mass-kicker{margin-bottom:14px}
.m2-subkicker{margin:0 0 18px; font-size:clamp(24px,3vw,40px); font-weight:800; color:var(--do-navy)}
.page-hero h1,.m2-hero h1{font-size:clamp(38px,6vw,76px); line-height:.95; letter-spacing:-.05em; max-width:12ch; color:var(--do-navy); margin:0 0 18px}
.page-hero p,.m2-hero p,.lead,.prose p,.journey-card p,.project-copy p,.advisory-copy p,.m2-foundation-card p,.m2-service p,.m2-proof-card p,.story-photo-copy p,.mind-photo-copy p,.site-evolution-copy p{font-size:clamp(17px,2vw,20px); line-height:1.72; color:var(--do-muted)}
.page-hero p strong,.m2-hero p strong,.key-term,strong{color:var(--do-ink)}
.m2-hero-grid,
.presspot-hero-grid,
.m2-approach-grid,
.story-photo-grid,
.mind-photo-grid,
.project-row,
.contact-calendar-grid,
.mass-final-grid,
.statement-split,
.outcomes-grid,
.grid-2,
.proof-grid,
.advisory-v13-intro,
.presspot-format-grid{
  display:grid;
  gap:28px;
}
.m2-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr); align-items:center}
.m2-hero-grid > div:first-child{position:relative}
.m2-hero h1 em{font-style:normal; color:var(--do-blue)}
.m2-hero .m2-mini-note{
  margin-top:18px;
  max-width:54ch;
  padding:16px 18px;
  border-radius:18px;
  border:1px solid rgba(48,92,255,.12);
  background:rgba(48,92,255,.05);
  color:var(--do-ink);
  font-size:15px;
  line-height:1.6;
}
.m2-hero-name{
  display:inline-flex; align-items:center; gap:10px; margin:0 0 18px;
  padding:10px 16px; border-radius:999px;
  background:rgba(255,255,255,.92); border:1px solid rgba(48,92,255,.14); box-shadow:var(--do-shadow-soft);
}
.m2-hero-name strong{font-size:16px; color:var(--do-navy)}
.m2-hero-name span{font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--do-blue); font-weight:800}
.m2-hero-visual-stack{display:grid; gap:20px}
.m2-hero-portrait,.m2-hero-art,.mind-image-placeholder,.story-placeholder-card{
  border-radius:32px;
  border:1px solid rgba(25,53,135,.08);
  box-shadow:var(--do-shadow);
  overflow:hidden;
}
.m2-hero-portrait{
  background:linear-gradient(145deg, rgba(255,255,255,.96), rgba(241,246,255,.96));
  padding:18px;
}
.m2-hero-portrait img{width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:26px}
.m2-hero-art{background:linear-gradient(135deg, #071431, #102455); padding:18px; min-height:220px; display:flex; align-items:center; justify-content:center}
.m2-hero-art img{width:100%; height:auto; border-radius:22px}
.m2-foundations{
  display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:22px; margin-top:30px;
}
.m2-foundation-card,
.m2-panel,
.journey-card,
.case-stats .stat,
.contact-card,
.story-photo-copy,
.mind-photo-copy,
.mind-image-placeholder,
.statement-big,
.margin-note,
.site-era,
.advisory-row,
.project-copy,
.prose blockquote,
.gallery figure,
.clash-feature,
.solr-track-card,
.solr-song-card,
.presspot-logo-frame,
.project-photo,
.presspot-cover,
.presspot-storyboard figure,
.contact-prompt-list > div,
.m2-value-grid > div,
.preview-notes i,
.clash-facts span,
.presspot-facts span,
.case-stats .stat,
.m2-skill-tags span,
.contact-grid p strong+br,
.old-site-preview,
.new-site-preview,
.booking-note{
  background:rgba(255,255,255,.88);
  border:1px solid var(--do-line);
  border-radius:24px;
  box-shadow:var(--do-shadow-soft);
}
.m2-foundation-card,
.m2-panel,
.journey-card,
.contact-card,
.project-copy,
.advisory-row,
.story-photo-copy,
.mind-photo-copy,
.statement-big,
.margin-note,
.clash-feature,.page-hero .case-stats .stat{padding:24px}
.m2-foundation-card h2,.m2-proof-card h3,.m2-service h3,.project-copy h2,.journey-card h2,.story-photo-copy h2,.mind-photo-copy h2,.page-hero h2,.advisory-copy h2,.site-evolution-copy h2,.mass-testimonial-head h2,.cta h2,.calendar-card-head h2{font-size:clamp(24px,3vw,38px); line-height:1.08; letter-spacing:-.03em; color:var(--do-navy); margin:10px 0 12px}
.m2-services,.m2-proof,.m2-approach,.mass-testimonials,.section,.cta,.gallery{padding:30px 0}
.m2-services-grid,.m2-proof-grid,.mass-quote-grid,.journey-card-grid,.presspot-storyboard,.clash-gallery,.solr-track-grid,.solr-song-visuals,.project-grid{display:grid; gap:20px}
.m2-services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.m2-proof-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.m2-service,.m2-proof-card{display:flex; flex-direction:column; min-height:100%}
.m2-service-icon{
  width:48px; height:48px; display:grid; place-items:center; border-radius:16px;
  background:linear-gradient(135deg, rgba(48,92,255,.1), rgba(102,168,255,.18));
  color:var(--do-blue); font-size:24px; margin-bottom:18px;
}
.m2-service-value,.m2-chip{margin-bottom:12px}
.m2-proof-card h3,.m2-service h3{margin-top:0}
.m2-statline{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:auto; padding-top:20px}
.m2-statline > div{padding:14px; border-radius:18px; background:linear-gradient(180deg, rgba(48,92,255,.05), rgba(48,92,255,.02)); border:1px solid rgba(48,92,255,.09)}
.m2-statline strong,.case-stats strong{display:block; font-size:clamp(22px,3vw,32px); color:var(--do-navy)}
.m2-statline span,.case-stats span{display:block; font-size:13px; line-height:1.45; color:var(--do-muted)}
.m2-approach-grid{grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr); align-items:center}
.m2-photo img{border-radius:30px; box-shadow:var(--do-shadow); width:100%; height:auto; object-fit:cover; aspect-ratio:4/5}
.m2-value-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:24px 0}
.m2-value-grid > div{padding:18px}
.m2-value-grid strong{display:block; margin-bottom:10px; font-size:18px; color:var(--do-navy)}
.m2-value-grid span{display:block; font-size:15px; line-height:1.6; color:var(--do-muted)}
.m2-skill-tags{display:flex; flex-wrap:wrap; gap:10px; margin-top:22px}
.m2-skill-tags span,
.preview-notes i,
.clash-facts span,
.presspot-facts span{padding:10px 12px; border-radius:999px; font-size:12px; letter-spacing:.12em; font-style:normal; font-weight:700; text-transform:uppercase; color:var(--do-blue)}
.m2-quote{margin-top:22px; padding:22px; border-radius:24px; background:linear-gradient(135deg, rgba(9,19,45,.98), rgba(19,42,103,.94)); color:#fff; box-shadow:var(--do-shadow)}
.mass-testimonials .mass-testimonial-head{max-width:820px; margin-bottom:24px}
.mass-quote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.mass-quote-grid blockquote{margin:0; padding:26px; border-radius:28px; background:#fff; border:1px solid var(--do-line); box-shadow:var(--do-shadow-soft)}
.mass-quote-grid p{margin:0 0 18px; font-size:18px; line-height:1.72; color:var(--do-ink)}
.mass-quote-grid footer{display:flex; flex-direction:column; gap:4px; color:var(--do-muted)}
.mass-final-cta .mass-final-grid,.cta .cta-box{padding:30px; border-radius:30px; background:linear-gradient(135deg, #081327, #153274); color:#fff; box-shadow:0 26px 60px rgba(8,19,39,.22)}
.mass-final-cta h2,.cta h2{color:#fff; margin:8px 0 0}
.mass-final-cta p,.cta p{color:rgba(255,255,255,.82)}
.footer{padding:28px 0 46px; color:var(--do-muted)}
.footer-row{display:flex; align-items:center; justify-content:space-between; gap:14px; border-top:1px solid rgba(12,22,49,.08); padding-top:22px}

/* internal pages */
.page-hero{padding-top:72px}
.page-hero h1{max-width:14ch}
.page-hero .container{padding:0}
.section-intro,.advisory-v13-intro,.journey-intro{display:grid; gap:16px; align-items:start}
.advisory-v13-intro,.contact-calendar-grid,.presspot-hero-grid,.story-photo-grid,.mind-photo-grid,.statement-split,.outcomes-grid,.project-row,.presspot-format-grid,.mass-final-grid,.grid-2{grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start}
.advisory-grid{display:grid; gap:18px}
.advisory-row{display:grid; grid-template-columns:72px minmax(0,1fr); gap:20px; align-items:flex-start}
.advisory-mark{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;font-size:30px;background:linear-gradient(135deg, rgba(48,92,255,.11), rgba(102,168,255,.18));color:var(--do-blue)}
.value-pill{padding:8px 12px; border-radius:999px; background:rgba(48,92,255,.08); border:1px solid rgba(48,92,255,.10)}
.value-pill-light{background:rgba(9,19,45,.06); color:var(--do-navy)}
.actions{display:flex; gap:12px; flex-wrap:wrap}
.btn,.mass-big-cta{display:inline-flex; align-items:center; justify-content:center; padding:14px 18px; border-radius:999px; font-weight:800; text-decoration:none}
.project-grid{gap:26px}
.project-row,.clash-feature,.solr-row{grid-template-columns:minmax(0,1fr) minmax(280px,.94fr); gap:26px; align-items:center}
.project-copy,.clash-copy,.solr-copy{height:100%}
.project-photo img,.presspot-logo-frame img,.presspot-cover img,.presspot-storyboard img,.gallery img,.solr-song-card img{width:100%; height:auto; object-fit:cover; border-radius:22px}
.project-links{display:flex; flex-wrap:wrap; gap:14px; margin-top:18px}
.project-links a,.route-project-link a,.project-copy > a,.solr-track-card a,.contact a,.cta a,.mass-quote-grid a{color:var(--do-blue); font-weight:700; text-decoration:none}
.project-links a:hover,.route-project-link a:hover,.project-copy > a:hover,.solr-track-card a:hover,.contact a:hover,.cta a:hover{text-decoration:underline}
.status{margin-bottom:12px}
blockquote{position:relative}
.prose,.mind-prose-v13{width:min(calc(100% - 32px), 860px); margin:0 auto; padding:10px 0 30px}
.prose h2,.mind-prose-v13 h2,.prose h3,.mind-prose-v13 h3{font-size:clamp(26px,3vw,38px); line-height:1.12; letter-spacing:-.03em; color:var(--do-navy); margin:40px 0 14px}
.prose h3,.mind-prose-v13 h3{font-size:clamp(22px,2.5vw,30px)}
.prose blockquote,.mind-prose-v13 blockquote{margin:28px 0; padding:24px 26px; font-size:20px; line-height:1.6; color:var(--do-navy); border-left:4px solid var(--do-blue)}
.case-stats{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:26px}
.case-stats .stat{padding:18px}
.gallery{padding-top:14px}
.gallery .container,.gallery{display:block}
.gallery{width:min(calc(100% - 32px), var(--do-max)); margin:0 auto}
.gallery{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px}
.gallery figure{margin:0; padding:12px}
.gallery figcaption{padding:14px 6px 4px; color:var(--do-muted); line-height:1.55; font-size:15px}
.story-placeholder-card{padding:30px; background:linear-gradient(160deg, rgba(9,19,45,.98), rgba(20,50,120,.88)); color:#fff; min-height:320px; display:flex; flex-direction:column; justify-content:flex-end}
.story-placeholder-card small{display:block; letter-spacing:.16em; text-transform:uppercase; font-weight:800; color:rgba(255,255,255,.66); margin-bottom:14px}
.story-placeholder-card strong{font-size:clamp(28px,4vw,42px); line-height:1.05; color:#fff}
.statement-big{font-size:clamp(30px,4vw,48px); line-height:1.06; letter-spacing:-.04em; color:var(--do-navy); font-weight:850}
.margin-note{font-size:18px; line-height:1.7; color:var(--do-muted)}
.inverse-section .container,.site-evolution-section,.contact-grid,.simple-route-section .container{display:block}
.presspot-storyboard{grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:24px}
.presspot-facts,.clash-facts{display:flex; flex-wrap:wrap; gap:10px; margin-top:18px}
.clash-gallery{grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start}
.clash-gallery figure,.solr-song-card{margin:0; padding:12px}
.clash-character-spread{display:flex; align-items:flex-end; justify-content:center; gap:10px; padding:10px}
.card-left,.card-center,.card-right{width:31%}
.solr-track-grid{grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:20px}
.solr-track-card{padding:18px}
.solr-track-card strong{display:block; margin-bottom:10px; font-size:18px; color:var(--do-navy)}
.solr-track-index{display:block; margin-bottom:12px; color:var(--do-blue); font-size:12px; letter-spacing:.2em; font-weight:800}
.solr-side{display:grid; gap:18px}
.solr-song-visuals{grid-template-columns:repeat(2,minmax(0,1fr))}
.solr-song-card-wide{grid-column:1 / -1}
.contact-prompt-list{display:grid; gap:14px; margin:22px 0 28px}
.contact-prompt-list > div{padding:18px}
.contact-prompt-list strong{display:block; margin-bottom:8px; color:var(--do-navy)}
.calendar-card{padding:26px}
.calendar-card-head{margin-bottom:18px}
.booking-form,.thoughtful-form{display:grid; gap:16px}
.booking-two{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px}
label{font-weight:700; color:var(--do-navy); display:block; margin-bottom:8px}
input,select,textarea{
  width:100%; border:1px solid rgba(13,35,90,.12); background:var(--do-surface-2); color:var(--do-ink);
  border-radius:16px; padding:14px 16px; font:inherit; outline:none;
}
input:focus,select:focus,textarea:focus{border-color:rgba(48,92,255,.45); box-shadow:0 0 0 4px rgba(48,92,255,.10)}
textarea{min-height:140px; resize:vertical}
.booking-note{padding:16px 18px; color:var(--do-muted); font-size:14px; line-height:1.6}
.mind-image-placeholder,
.old-site-preview,.new-site-preview{padding:24px}
.mind-image-placeholder{min-height:320px; background:linear-gradient(160deg, rgba(9,19,45,.95), rgba(20,50,120,.86)); position:relative}
.mind-image-placeholder:before,.mind-image-placeholder:after{
  content:""; position:absolute; inset:auto; border-radius:999px;
}
.mind-image-placeholder:before{width:180px;height:180px;right:44px;top:42px;border:3px solid rgba(255,255,255,.78);box-shadow:0 0 30px rgba(102,168,255,.36)}
.mind-image-placeholder:after{width:120px;height:120px;left:48px;bottom:56px;border:3px solid rgba(102,168,255,.35)}
.mind-image-placeholder{display:flex; align-items:flex-end; justify-content:flex-start}
.mind-image-placeholder::marker{content:""}
.mind-image-placeholder > *{position:relative; z-index:2}
.site-evolution-section{margin-top:32px}
.site-evolution-copy{margin-bottom:22px}
.site-evolution-visuals{display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:18px; align-items:center}
.site-era{margin:0; padding:18px}
.browser-bar{display:flex; align-items:center; gap:8px; margin-bottom:16px; color:var(--do-muted)}
.browser-bar span{width:10px;height:10px;border-radius:50%;background:#d6def4}
.browser-bar small{margin-left:4px}
.old-site-preview strong,.new-site-preview strong{display:block; font-size:26px; line-height:1.1; color:var(--do-navy); margin-bottom:10px}
.old-tagline{font-size:16px; color:var(--do-muted)}
.old-site-preview nav{font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--do-blue); font-weight:800; margin:20px 0}
.old-post{padding:14px 0; border-top:1px solid rgba(12,22,49,.08)}
.evolution-arrow{font-size:34px; font-weight:800; color:var(--do-blue); display:flex; flex-direction:column; align-items:center; gap:8px}
.evolution-arrow span{font-size:11px; letter-spacing:.16em; text-transform:uppercase}
.site-evolution-close{text-align:center; margin-top:18px; font-weight:700; color:var(--do-muted)}
.journey-flow{display:grid; gap:20px; margin-top:26px}
.journey-step,.journey-step-dual,.journey-step-final{display:grid; grid-template-columns:100px minmax(0,1fr); gap:22px; align-items:start}
.journey-rail{display:flex; flex-direction:column; align-items:center; gap:10px; position:relative; padding-top:8px}
.journey-rail:after{content:""; position:absolute; top:36px; bottom:-48px; width:2px; background:linear-gradient(180deg, rgba(48,92,255,.26), rgba(48,92,255,0));}
.journey-step:last-child .journey-rail:after,.journey-step-final .journey-rail:after{display:none}
.journey-year{font-weight:800; color:var(--do-blue); letter-spacing:.08em; text-transform:uppercase; font-size:14px}
.journey-dot{width:16px; height:16px; border-radius:50%; background:var(--do-blue); box-shadow:0 0 0 8px rgba(48,92,255,.10)}
.journey-card-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px}
.journey-fade{display:none}
.route-project-link{margin-top:18px}
.case-inline-note{padding:22px; background:rgba(48,92,255,.05); border:1px solid rgba(48,92,255,.12); border-radius:24px; margin:22px 0; color:var(--do-muted)}

/* remove/neutralize previous photo-heavy blocks if any remain */
.story-photo-card img,.case-inline-photo img{border-radius:22px}
.case-inline-photo{margin:24px 0; padding:12px; background:#fff; border:1px solid var(--do-line); border-radius:24px; box-shadow:var(--do-shadow-soft)}
.case-inline-photo figcaption{padding:14px 10px 6px; color:var(--do-muted); line-height:1.55}

/* responsive */
@media (max-width: 1100px){
  .m2-services-grid,.m2-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 920px){
  .m2-hero-grid,
  .m2-foundations,
  .advisory-v13-intro,.contact-calendar-grid,.presspot-hero-grid,.story-photo-grid,.mind-photo-grid,.statement-split,.outcomes-grid,.project-row,.presspot-format-grid,.mass-final-grid,.grid-2,
  .m2-approach-grid,
  .project-row,.clash-feature,.solr-row,
  .journey-card-grid,
  .site-evolution-visuals,
  .m2-value-grid,
  .case-stats,
  .solr-track-grid,
  .m2-statline,
  .booking-two,
  .clash-gallery,
  .presspot-storyboard,
  .gallery,
  .m2-services-grid,
  .m2-proof-grid,
  .mass-quote-grid,
  .solr-song-visuals{grid-template-columns:1fr}
  .journey-step,.journey-step-dual,.journey-step-final{grid-template-columns:1fr}
  .journey-rail{flex-direction:row; justify-content:flex-start; gap:14px}
  .journey-rail:after{display:none}
  .nav-links{background:rgba(248,250,255,.98); border:1px solid var(--do-line); border-radius:20px; box-shadow:var(--do-shadow); padding:10px}
  .m2-hero-name{margin-top:4px}
}
@media (max-width: 640px){
  .site-header .nav{min-height:74px}
  .page-hero,.m2-hero{padding-top:42px}
  .page-hero h1,.m2-hero h1{font-size:clamp(34px,12vw,52px)}
  .m2-foundation-card,
  .m2-panel,
  .journey-card,
  .contact-card,
  .project-copy,
  .advisory-row,
  .story-photo-copy,
  .mind-photo-copy,
  .statement-big,
  .margin-note,
  .clash-feature,
  .mass-quote-grid blockquote,
  .gallery figure,
  .site-era,
  .case-stats .stat,
  .calendar-card,
  .presspot-logo-frame,
  .project-photo,
  .presspot-cover,
  .presspot-storyboard figure,
  .solr-track-card,
  .solr-song-card{padding:18px}
  .container{width:min(calc(100% - 24px), var(--do-max))}
  .m2-hero-portrait,.m2-hero-art,.mind-image-placeholder,.story-placeholder-card{border-radius:24px}
  .m2-hero-portrait img,.m2-hero-art img,.project-photo img,.gallery img,.presspot-cover img,.presspot-storyboard img,.solr-song-card img{border-radius:18px}
  .m2-quote,.mass-final-cta .mass-final-grid,.cta .cta-box{padding:22px}
  .footer-row{flex-direction:column; align-items:flex-start}
}

/* ===== v3 correction pass: logo, legibility, layout and mobile polish ===== */
:root{
  --m-blue:#315dff;
  --m-lime:#68a9ff;
  --m-acid:#68a9ff;
  --acid:#68a9ff;
}

/* New DO identity in header and transitions */
.brand-logo,
.massimo2 .brand-logo,
body.massimo-internal .brand-logo{
  width:58px !important;
  height:36px !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:10px !important;
  filter:none !important;
  box-shadow:0 9px 20px rgba(16,49,124,.14) !important;
  background:#08152f;
}
.page-transition{
  background:radial-gradient(circle at center,rgba(248,251,255,.99),rgba(235,242,255,.99)) !important;
}
.page-transition-logo{
  width:min(260px,58vw) !important;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  border-radius:22px !important;
  box-shadow:0 26px 60px rgba(7,22,55,.18) !important;
  filter:none !important;
}

/* Homepage hero: clean hierarchy; photo lives only in "Il mio vantaggio" */
.m2-hero-grid{
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr) !important;
  gap:64px !important;
  align-items:center !important;
}
.m2-kicker{
  margin:0 0 10px !important;
  color:var(--do-blue) !important;
}
.m2-person-name{
  margin:0 0 20px;
  font-size:clamp(24px,2.8vw,42px);
  line-height:1;
  letter-spacing:-.035em;
  font-weight:850;
  color:var(--do-navy);
}
.m2-hero-logo-only{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.m2-hero-logo-only .m2-hero-art{
  width:100%;
  min-height:0 !important;
  padding:16px !important;
  background:linear-gradient(145deg,#07142f,#10265c) !important;
  border-radius:30px !important;
}
.m2-hero-logo-only .m2-hero-art img{
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  border-radius:20px !important;
}
.m2-hero h1{max-width:10.5ch !important}

/* Dark proof section: every word must be readable */
.m2-proof{
  background:linear-gradient(145deg,#071126 0%,#0d1732 58%,#0a1c42 100%) !important;
  color:#fff !important;
}
.m2-proof .m2-section-label{color:#8dc1ff !important}
.m2-proof .m2-panel,
.massimo2 .m2-proof .m2-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.045)) !important;
  border:1px solid rgba(142,183,255,.20) !important;
  box-shadow:none !important;
}
.m2-proof-card,
.m2-proof-card h3,
.massimo2 .m2-proof-card h3,
.m2-proof-card strong,
.m2-proof-card .m2-statline strong{
  color:#fff !important;
}
.m2-proof-card p,
.massimo2 .m2-proof-card p{
  color:#dce6f7 !important;
}
.m2-proof-card .m2-chip,
.massimo2 .m2-proof-card .m2-chip{
  color:#a9c7ff !important;
}
.m2-proof-card em{color:#79b4ff !important}
.m2-proof-card .m2-statline > div{
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(145,185,255,.15) !important;
}
.m2-proof-card .m2-statline span{color:#abc0df !important}

/* Testimonials: keep introduction as one coherent text block */
.mass-testimonials .mass-testimonial-head,
.massimo2 .mass-testimonial-head{
  display:block !important;
  max-width:800px !important;
  margin:14px 0 34px !important;
}
.mass-testimonials .mass-testimonial-head h2,
.massimo2 .mass-testimonial-head h2{
  max-width:16ch !important;
  margin:0 0 16px !important;
}
.mass-testimonials .mass-testimonial-head p,
.massimo2 .mass-testimonial-head p{
  max-width:720px !important;
  margin:0 !important;
  font-size:18px !important;
  line-height:1.65 !important;
}

/* Clash of Social House: readable copy, complete images, balanced gallery */
body.massimo-internal .clash-feature.clash-feature-fixed{
  display:grid !important;
  grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr) !important;
  gap:30px !important;
  padding:28px !important;
  align-items:start !important;
  background:linear-gradient(145deg,#fdfefe,#f3f7ff) !important;
  border:1px solid rgba(31,64,154,.16) !important;
  border-radius:30px !important;
  color:var(--do-ink) !important;
  box-shadow:var(--do-shadow-soft) !important;
  overflow:visible !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-copy{
  align-self:start !important;
  padding:8px 6px 8px 2px;
}
body.massimo-internal .clash-feature.clash-feature-fixed .status{
  color:var(--do-blue) !important;
  background:rgba(48,92,255,.08) !important;
  border:1px solid rgba(48,92,255,.10) !important;
  border-radius:999px;
  padding:8px 12px;
}
body.massimo-internal .clash-feature.clash-feature-fixed h2{
  color:var(--do-navy) !important;
  font-size:clamp(38px,4.6vw,64px) !important;
  line-height:.98 !important;
  margin:18px 0 20px !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed p,
body.massimo-internal .clash-feature.clash-feature-fixed li{
  color:#485b84 !important;
  font-size:17px !important;
  line-height:1.7 !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed .key-term{
  color:var(--do-navy) !important;
  background:linear-gradient(transparent 66%,rgba(102,168,255,.25) 0) !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-facts span{
  color:var(--do-blue) !important;
  background:#fff !important;
  border:1px solid rgba(48,92,255,.15) !important;
  box-shadow:0 7px 18px rgba(18,46,114,.06) !important;
}
body.massimo-internal .clash-gallery-fixed{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:start !important;
}
body.massimo-internal .clash-gallery-fixed figure{
  margin:0 !important;
  padding:12px !important;
  border-radius:22px !important;
  background:#fff !important;
  border:1px solid rgba(31,64,154,.12) !important;
  box-shadow:0 12px 28px rgba(14,38,94,.09) !important;
  overflow:hidden !important;
}
body.massimo-internal .clash-gallery-fixed figure img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
  border-radius:14px !important;
  background:#0c1836 !important;
}
body.massimo-internal .clash-gallery-fixed .clash-box-main{
  grid-row:span 2;
}
body.massimo-internal .clash-gallery-fixed .clash-character-figure{
  grid-column:1 / -1;
}
body.massimo-internal .clash-gallery-fixed .clash-character-spread{
  display:flex !important;
  justify-content:center !important;
  align-items:flex-end !important;
  gap:10px !important;
  background:linear-gradient(145deg,#091631,#14285d) !important;
  border-radius:14px !important;
  padding:18px !important;
  overflow:hidden !important;
}
body.massimo-internal .clash-gallery-fixed .clash-character-spread img{
  width:31% !important;
  height:auto !important;
  background:transparent !important;
  border-radius:10px !important;
}

/* My journey: one concise band, no empty decorative block */
.story-photo-band .story-context-card{
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) !important;
  gap:34px !important;
  align-items:center !important;
  padding:30px !important;
  border-radius:28px !important;
  background:linear-gradient(135deg,#0a1734 0%,#173a88 100%) !important;
  box-shadow:var(--do-shadow) !important;
}
.story-context-heading .eyebrow{color:#92c4ff !important}
.story-context-heading h2{
  margin:10px 0 0 !important;
  color:#fff !important;
  font-size:clamp(34px,4.2vw,56px) !important;
  line-height:1 !important;
  letter-spacing:-.04em !important;
}
.story-context-copy p{
  margin:0 !important;
  color:#dce8ff !important;
  font-size:19px !important;
  line-height:1.7 !important;
}

/* Mobile consistency */
@media (max-width:920px){
  .m2-hero-grid{grid-template-columns:1fr !important; gap:28px !important}
  .m2-hero-logo-only{max-width:620px; width:100%; justify-self:start}
  .story-photo-band .story-context-card{grid-template-columns:1fr !important; gap:18px !important}
  body.massimo-internal .clash-feature.clash-feature-fixed{grid-template-columns:1fr !important}
}
@media (max-width:640px){
  .brand-logo,.massimo2 .brand-logo,body.massimo-internal .brand-logo{width:50px !important;height:32px !important}
  .m2-person-name{font-size:28px}
  .m2-hero-logo-only .m2-hero-art{padding:10px !important; border-radius:22px !important}
  .m2-proof{padding:50px 0 !important}
  .mass-testimonials .mass-testimonial-head h2,.massimo2 .mass-testimonial-head h2{max-width:none !important}
  body.massimo-internal .clash-feature.clash-feature-fixed{padding:18px !important; border-radius:24px !important}
  body.massimo-internal .clash-gallery-fixed{grid-template-columns:1fr !important}
  body.massimo-internal .clash-gallery-fixed .clash-box-main,
  body.massimo-internal .clash-gallery-fixed .clash-character-figure{grid-row:auto; grid-column:auto}
  body.massimo-internal .clash-gallery-fixed .clash-character-spread{padding:12px !important; gap:6px !important}
  .story-photo-band .story-context-card{padding:22px !important; border-radius:24px !important}
}

/* Final specificity fixes */
body.massimo-internal .story-photo-band .story-context-card{
  background:linear-gradient(135deg,#0a1734 0%,#173a88 100%) !important;
  color:#fff !important;
  border:1px solid rgba(116,167,255,.20) !important;
}
body.massimo-internal .story-photo-band .story-context-card .story-context-copy p{
  color:#dce8ff !important;
}
body.massimo-internal .story-photo-band .story-context-card .story-context-heading h2{
  color:#fff !important;
}
body.massimo-internal .story-photo-band{padding:34px 0 !important}

/* Featured Webboh project: intentional dark treatment, not white-on-white */
body.massimo-internal .project-row.project-row-featured{
  background:linear-gradient(145deg,#09152f,#152f6c) !important;
  border:1px solid rgba(106,158,255,.22) !important;
  color:#fff !important;
}
body.massimo-internal .project-row.project-row-featured .project-copy{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:24px !important;
}
body.massimo-internal .project-row.project-row-featured .project-copy h2,
body.massimo-internal .project-row.project-row-featured .project-copy strong{
  color:#fff !important;
}
body.massimo-internal .project-row.project-row-featured .project-copy p{
  color:#dce7ff !important;
}
body.massimo-internal .project-row.project-row-featured .project-copy .status,
body.massimo-internal .project-row.project-row-featured .project-copy a{
  color:#8fc1ff !important;
}
body.massimo-internal .project-row.project-row-featured .project-copy .key-term{
  color:#fff !important;
  background:linear-gradient(transparent 68%,rgba(111,171,255,.24) 0) !important;
}

/* v4 — focused refinements */

/* Home portrait: keep the user's new photo only in the "Il mio vantaggio" block */
.m2-approach .m2-photo img{
  aspect-ratio:1 / 1;
  object-fit:cover;
  object-position:center 44%;
  border-radius:30px;
}

/* Come ragiono: a deliberately useless micro-break from the problem */
body.massimo-internal .mind-logo-break{
  min-height:100%;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:16px;
  padding:28px;
  border-radius:30px;
  overflow:hidden;
  background:
    radial-gradient(circle at 74% 20%, rgba(100,170,255,.22), transparent 34%),
    linear-gradient(150deg,#07142f 0%,#102b67 100%);
  border:1px solid rgba(126,177,255,.22);
  box-shadow:0 22px 48px rgba(7,20,47,.20);
  color:#fff;
}
body.massimo-internal .mind-logo-break .eyebrow{color:#9ac8ff !important}
body.massimo-internal .mind-logo-break p{
  margin:0;
  max-width:42ch;
  color:#dce8ff !important;
  font-size:17px !important;
  line-height:1.65 !important;
}
body.massimo-internal .mind-logo-break p strong{color:#fff !important}
body.massimo-internal .mind-logo-break small{
  color:#95aad4;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:800;
}
body.massimo-internal .mind-logo-toy{
  appearance:none;
  -webkit-appearance:none;
  width:min(100%,360px);
  aspect-ratio:1.75 / 1;
  margin:2px 0 0;
  padding:24px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.14);
  border-radius:26px;
  background:rgba(2,10,27,.42);
  box-shadow:inset 0 0 42px rgba(71,132,255,.10), 0 18px 36px rgba(0,0,0,.18);
  cursor:pointer;
  overflow:hidden;
  touch-action:manipulation;
}
body.massimo-internal .mind-logo-toy:focus-visible{
  outline:3px solid #86b9ff;
  outline-offset:4px;
}
body.massimo-internal .mind-logo-toy img{
  width:min(92%,285px);
  height:auto;
  display:block;
  user-select:none;
  pointer-events:none;
  transform-origin:center;
  transform:
    translate(var(--toy-x,0px),var(--toy-y,0px))
    rotate(var(--toy-rot,0deg))
    skew(var(--toy-skew-x,0deg),var(--toy-skew-y,0deg))
    scale(var(--toy-sx,1),var(--toy-sy,1));
  filter:drop-shadow(0 0 18px rgba(83,145,255,.38));
  transition:transform .62s cubic-bezier(.17,.84,.34,1.25), filter .3s ease;
  will-change:transform;
}
body.massimo-internal .mind-logo-toy.is-hit img{
  filter:drop-shadow(0 0 34px rgba(112,178,255,.72));
}

/* Clash: copy first, then a compact two-column image grid. No dead space. */
body.massimo-internal .clash-feature.clash-feature-fixed{
  display:block !important;
  padding:30px !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-copy{
  max-width:900px !important;
  padding:4px 2px 22px !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-copy h2{
  max-width:12ch;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-gallery-fixed{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  width:100% !important;
  align-items:start !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-gallery-fixed figure{
  min-width:0 !important;
  margin:0 !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-gallery-fixed figure img{
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-character-figure{
  grid-column:1 / -1 !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-character-spread{
  min-height:0 !important;
}

@media (max-width:920px){
  body.massimo-internal .mind-logo-break{min-height:360px}
  body.massimo-internal .clash-feature.clash-feature-fixed .clash-copy{max-width:none !important}
}
@media (max-width:640px){
  .m2-approach .m2-photo img{aspect-ratio:1 / 1}
  body.massimo-internal .mind-logo-break{padding:22px; min-height:330px; border-radius:24px}
  body.massimo-internal .mind-logo-toy{width:100%; padding:18px; border-radius:20px}
  body.massimo-internal .clash-feature.clash-feature-fixed .clash-gallery-fixed{grid-template-columns:1fr !important}
  body.massimo-internal .clash-feature.clash-feature-fixed .clash-character-figure{grid-column:auto !important}
}

@media (prefers-reduced-motion:reduce){
  body.massimo-internal .mind-logo-toy img{transition:none}
}

/* v4 Clash column packing: independent stacks eliminate vertical dead space */
body.massimo-internal .clash-feature.clash-feature-fixed .clash-gallery-fixed{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  align-items:start !important;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-media-column{
  display:flex;
  flex-direction:column;
  gap:16px;
  min-width:0;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-media-column figure{
  width:100%;
}
body.massimo-internal .clash-feature.clash-feature-fixed .clash-character-figure{
  grid-column:1 / -1 !important;
}
@media (max-width:640px){
  body.massimo-internal .clash-feature.clash-feature-fixed .clash-gallery-fixed{grid-template-columns:1fr !important}
  body.massimo-internal .clash-feature.clash-feature-fixed .clash-character-figure{grid-column:auto !important}
}

/* v5 — home hero alignment, full-size mind toy, rebuilt Clash layout */

/* Home: keep the "what I do" message on the left and identity/logo on the right */
.massimo2 .m2-hero-grid{
  grid-template-columns:minmax(0,1.04fr) minmax(340px,.96fr) !important;
  align-items:start !important;
  gap:54px !important;
}
.massimo2 .m2-hero-copy{
  padding-top:8px;
}
.massimo2 .m2-hero-logo-only{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:14px !important;
  width:100% !important;
  max-width:620px !important;
  justify-self:end !important;
}
.massimo2 .m2-person-name-right{
  margin:0 0 2px !important;
  padding:0 !important;
  font-size:clamp(28px,3.2vw,44px) !important;
  line-height:1 !important;
  letter-spacing:-.035em !important;
  font-weight:900 !important;
  color:var(--do-navy) !important;
}
.massimo2 .m2-hero-logo-only .m2-hero-art{
  width:100% !important;
  min-height:0 !important;
  aspect-ratio:1.72 / 1 !important;
  padding:16px !important;
  border-radius:30px !important;
}
.massimo2 .m2-hero-logo-only .m2-hero-art img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:22px !important;
}
.massimo2 .m2-mini-note-right{
  margin:0 !important;
  width:100% !important;
  max-width:none !important;
  min-height:76px !important;
  display:flex !important;
  align-items:center !important;
  padding:16px 18px !important;
  border-radius:18px !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

/* Come ragiono: the toy fills the right card and the exit message is always readable */
body.massimo-internal .mind-value-band .mind-photo-grid{
  align-items:stretch !important;
}
body.massimo-internal .mind-value-band .mind-photo-copy,
body.massimo-internal .mind-value-band .mind-logo-break{
  height:100% !important;
}
body.massimo-internal .mind-logo-break{
  min-height:0 !important;
  justify-content:flex-start !important;
  padding:28px !important;
  gap:16px !important;
}
body.massimo-internal .mind-logo-toy{
  width:100% !important;
  max-width:none !important;
  min-height:240px !important;
  flex:1 1 250px !important;
  aspect-ratio:auto !important;
  margin:0 !important;
  padding:24px !important;
  border-radius:24px !important;
}
body.massimo-internal .mind-logo-toy img{
  width:min(86%,360px) !important;
  max-height:210px !important;
  object-fit:contain !important;
}
body.massimo-internal .mind-logo-break p{
  max-width:none !important;
  width:100% !important;
}
body.massimo-internal .mind-logo-hint{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  max-width:100% !important;
  padding:10px 14px !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#0b1b42 !important;
  border:1px solid rgba(255,255,255,.75) !important;
  box-shadow:0 10px 22px rgba(0,0,0,.16) !important;
  font-size:12px !important;
  line-height:1.2 !important;
  letter-spacing:.11em !important;
  text-transform:uppercase !important;
  font-weight:900 !important;
  white-space:normal !important;
}

/* Clash of Social House — rebuilt independently from the legacy Clash CSS */
body.massimo-internal .clash-v5{
  display:grid !important;
  grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr) !important;
  gap:28px !important;
  align-items:start !important;
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  padding:28px !important;
  margin:0 !important;
  overflow:visible !important;
  border-radius:30px !important;
  border:1px solid rgba(31,64,154,.16) !important;
  background:linear-gradient(145deg,#fdfefe 0%,#f3f7ff 100%) !important;
  box-shadow:var(--do-shadow-soft) !important;
}
body.massimo-internal .clash-v5-copy{
  align-self:start !important;
  min-width:0 !important;
  padding:8px 2px 4px !important;
}
body.massimo-internal .clash-v5-copy .status{
  color:var(--do-blue) !important;
  background:rgba(48,92,255,.08) !important;
  border:1px solid rgba(48,92,255,.10) !important;
  border-radius:999px !important;
  padding:8px 12px !important;
}
body.massimo-internal .clash-v5-copy h2{
  margin:18px 0 18px !important;
  max-width:12ch !important;
  color:var(--do-navy) !important;
  font-size:clamp(38px,4.6vw,64px) !important;
  line-height:.98 !important;
  letter-spacing:-.045em !important;
}
body.massimo-internal .clash-v5-copy p{
  margin:0 0 16px !important;
  color:#485b84 !important;
  font-size:17px !important;
  line-height:1.7 !important;
}
body.massimo-internal .clash-v5-copy .key-term{
  color:var(--do-navy) !important;
  background:linear-gradient(transparent 66%,rgba(102,168,255,.25) 0) !important;
}
body.massimo-internal .clash-v5-facts{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:9px !important;
  margin-top:20px !important;
}
body.massimo-internal .clash-v5-facts span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:36px !important;
  padding:8px 12px !important;
  border-radius:999px !important;
  color:var(--do-blue) !important;
  background:#fff !important;
  border:1px solid rgba(48,92,255,.15) !important;
  box-shadow:0 7px 18px rgba(18,46,114,.06) !important;
  font-size:12px !important;
  line-height:1 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  font-weight:800 !important;
}
body.massimo-internal .clash-v5-gallery{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:start !important;
  width:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
}
body.massimo-internal .clash-v5-stack{
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
  min-width:0 !important;
}
body.massimo-internal .clash-v5-gallery figure{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:10px !important;
  border-radius:22px !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid rgba(31,64,154,.12) !important;
  box-shadow:0 12px 28px rgba(14,38,94,.09) !important;
}
body.massimo-internal .clash-v5-gallery figure img{
  position:static !important;
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
  min-height:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  transform:none !important;
  border-radius:14px !important;
  background:#0c1836 !important;
  box-shadow:none !important;
}
body.massimo-internal .clash-v5-characters{
  grid-column:1 / -1 !important;
}
body.massimo-internal .clash-v5-character-spread{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
  align-items:end !important;
  width:100% !important;
  min-height:0 !important;
  padding:12px !important;
  border-radius:14px !important;
  background:linear-gradient(145deg,#091631,#14285d) !important;
  overflow:hidden !important;
}
body.massimo-internal .clash-v5-character-spread img{
  width:100% !important;
  height:auto !important;
  background:transparent !important;
  border-radius:10px !important;
}

@media (max-width:920px){
  .massimo2 .m2-hero-grid{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }
  .massimo2 .m2-hero-logo-only{
    max-width:640px !important;
    justify-self:start !important;
  }
  .massimo2 .m2-person-name-right{font-size:34px !important}
  body.massimo-internal .clash-v5{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
  body.massimo-internal .clash-v5-copy{max-width:860px !important}
}

@media (max-width:640px){
  .massimo2 .m2-hero-logo-only{gap:12px !important}
  .massimo2 .m2-person-name-right{font-size:30px !important}
  .massimo2 .m2-hero-logo-only .m2-hero-art{padding:10px !important; border-radius:22px !important}
  .massimo2 .m2-mini-note-right{min-height:0 !important}
  body.massimo-internal .mind-logo-break{padding:22px !important}
  body.massimo-internal .mind-logo-toy{min-height:220px !important; padding:18px !important}
  body.massimo-internal .mind-logo-hint{width:100% !important; border-radius:14px !important}
  body.massimo-internal .clash-v5{padding:18px !important; border-radius:24px !important}
  body.massimo-internal .clash-v5-gallery{grid-template-columns:1fr !important}
  body.massimo-internal .clash-v5-characters{grid-column:auto !important}
  body.massimo-internal .clash-v5-character-spread{gap:6px !important; padding:8px !important}
}

/* v6 — centered identity and balanced hero columns */
.massimo2 .m2-hero > .container{
  position:relative !important;
}
.massimo2 .m2-person-name-center{
  position:absolute !important;
  top:2px !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  z-index:4 !important;
  font-size:clamp(30px,3vw,46px) !important;
  line-height:1 !important;
  letter-spacing:-.035em !important;
  font-weight:900 !important;
  color:var(--do-navy) !important;
  white-space:nowrap !important;
  text-align:center !important;
}
.massimo2 .m2-hero-grid{
  min-height:690px !important;
  align-items:stretch !important;
}
.massimo2 .m2-hero-copy{
  align-self:start !important;
  padding-top:70px !important;
}
.massimo2 .m2-hero-logo-only{
  align-self:stretch !important;
  justify-content:flex-start !important;
  padding-top:150px !important;
  gap:18px !important;
}
.massimo2 .m2-hero-logo-only .m2-hero-art{
  aspect-ratio:1.7 / 1 !important;
}
.massimo2 .m2-mini-note-right{
  margin-top:0 !important;
}
@media (max-width:920px){
  .massimo2 .m2-person-name-center{
    position:static !important;
    transform:none !important;
    display:block !important;
    text-align:left !important;
    margin:0 0 16px !important;
    white-space:normal !important;
  }
  .massimo2 .m2-hero-grid{min-height:0 !important}
  .massimo2 .m2-hero-copy{padding-top:0 !important}
  .massimo2 .m2-hero-logo-only{padding-top:0 !important}
}


/* v7 — final visual polish */
.massimo2 .m2-services,
.massimo2 .m2-approach,
.massimo2 .mass-testimonials{
  background:rgba(255,255,255,.34);
  border-top:1px solid rgba(31,64,154,.055);
  border-bottom:1px solid rgba(31,64,154,.045);
}
.massimo-internal .story-photo-band,
.massimo-internal .mind-photo-band{
  background:rgba(255,255,255,.30);
  border-top:1px solid rgba(31,64,154,.05);
  border-bottom:1px solid rgba(31,64,154,.04);
}
.m2-panel,
.journey-card,
.contact-card,
.project-copy,
.advisory-row,
.mass-quote-grid blockquote,
.gallery figure,
.solr-track-card,
.solr-song-card{
  box-shadow:0 10px 24px rgba(16,32,82,.05) !important;
}
body.massimo-internal .clash-v5{
  padding-bottom:28px !important;
}
body.massimo-internal .clash-v5-gallery{
  align-self:start !important;
}

/* v8 final fix: readable label on dark Webboh block */
.story-placeholder-card small{
  width:fit-content;
  max-width:100%;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.22);
  color:#ffffff !important;
  text-shadow:0 1px 8px rgba(0,0,0,.28);
  line-height:1.2;
}


/* v9 — unified site background + contact accessibility */
body.massimo-internal{
  background:
    radial-gradient(circle at top right, rgba(102,168,255,.20), transparent 30%),
    radial-gradient(circle at top left, rgba(48,92,255,.09), transparent 28%),
    linear-gradient(180deg, #fbfcff 0%, #f2f5fb 100%) !important;
  background-attachment: fixed !important;
}
body.massimo-internal .site-header{
  background:rgba(248,250,255,.84) !important;
  border-bottom:1px solid rgba(31,64,154,.08) !important;
}
body.massimo-internal .page-hero{
  background:transparent !important;
  border-bottom:1px solid rgba(31,64,154,.07) !important;
}
body.massimo-internal .page-hero:before{
  background:radial-gradient(circle,rgba(48,92,255,.12),rgba(48,92,255,0) 68%) !important;
}
body.massimo-internal .page-hero:after{
  background:radial-gradient(circle,rgba(102,168,255,.10),rgba(102,168,255,0) 70%) !important;
}
body.massimo-internal .section:not(.inverse-section),
body.massimo-internal .simple-route-section,
body.massimo-internal .advisory-layout-section,
body.massimo-internal .site-evolution-section,
body.massimo-internal .cta,
body.massimo-internal .story-photo-band,
body.massimo-internal .mind-photo-band{
  background:rgba(255,255,255,.22) !important;
  border-color:rgba(31,64,154,.06) !important;
}
body.massimo-internal .section:not(.inverse-section):nth-of-type(even){
  background:rgba(255,255,255,.36) !important;
}
body.massimo-internal .thoughtful-form .booking-note{
  background:#f7f9ff !important;
  color:#17264b !important;
  border:1px solid rgba(48,92,255,.20) !important;
  box-shadow:none !important;
  font-weight:650 !important;
  line-height:1.55 !important;
}
body.massimo-internal .thoughtful-form .contact-form-status{
  min-height:24px;
  margin:2px 0 0 !important;
  color:#ffffff !important;
  font-weight:750 !important;
  line-height:1.5 !important;
}
body.massimo-internal .thoughtful-form .contact-form-status.is-success{
  padding:14px 16px;
  border-radius:14px;
  color:#10203d !important;
  background:#dff7e9 !important;
  border:1px solid #a6e3bf !important;
}
body.massimo-internal .thoughtful-form .contact-form-status.is-error{
  padding:14px 16px;
  border-radius:14px;
  color:#4f1721 !important;
  background:#ffe8ec !important;
  border:1px solid #f2b8c3 !important;
}
body.massimo-internal .thoughtful-form button[disabled]{
  opacity:.68;
  cursor:wait;
}
.form-honeypot{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
