/* SMG V30.6 Brand Title Stability Patch
   Purpose: serious typography, no missing letters, no word-splitting, stable hero/card proportions. */
:root{--smg-v306-gold:#f5d98b;--smg-v306-text:#fff7e8;--smg-v306-line:rgba(245,217,139,.34)}

/* Absolute rule: titles never split inside a word */
h1,h2,h3,h4,h5,h6,.hero h1,.hero h2,.hero h3,.panel h2,.panel h3,.card h2,.card h3,.smg-home-title,.smg-home-title span,[class*="title"],[class*="Title"],[class*="heading"],[class*="Heading"]{
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
  text-wrap:normal!important;
}

/* Serious executive typography: premium, not oversized */
.hero h1,h1,.h1,.smg-display{font-size:clamp(34px,3.15vw,52px)!important;line-height:1.08!important;letter-spacing:-.028em!important;}
h2,.section h2,.head h2,.panel h2{font-size:clamp(28px,2.35vw,40px)!important;line-height:1.1!important;letter-spacing:-.02em!important;}
h3,.card h3,.panel h3,.smg-card h3,.smg-media-card h3,article h3,.smg-v28-admin-tile{font-size:clamp(20px,1.35vw,28px)!important;line-height:1.14!important;letter-spacing:-.012em!important;}

/* Home logo title: fixed clean lines, no SHEVCHENK / missing O */
.smg-home-title{display:block!important;max-width:720px!important;font-size:clamp(42px,4.1vw,62px)!important;line-height:.98!important;letter-spacing:-.025em!important;margin:0 0 24px!important;}
.smg-home-title span{display:block!important;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;}

/* Desktop hero geometry: give the brand enough room and stop right-card squeezing */
@media (min-width:981px){
  .heroGrid,.hero-grid,.split{grid-template-columns:minmax(520px,1.05fr) minmax(320px,.78fr)!important;gap:clamp(30px,3vw,52px)!important;align-items:stretch!important;}
  .hero .panel,.hero aside.panel,.hero-grid .card{max-width:420px!important;min-width:320px!important;}
  .hero .panel h2,.hero aside.panel h2,.hero-grid .card h2{font-size:clamp(28px,2.25vw,38px)!important;line-height:1.08!important;}
}
@media (min-width:981px) and (max-width:1280px){
  .smg-home-title{font-size:clamp(38px,3.55vw,50px)!important;max-width:600px!important;}
  .heroGrid,.hero-grid,.split{grid-template-columns:minmax(430px,1fr) minmax(300px,.72fr)!important;gap:28px!important;}
  .hero .panel,.hero aside.panel,.hero-grid .card{max-width:360px!important;min-width:290px!important;}
  .hero .panel h2,.hero aside.panel h2,.hero-grid .card h2{font-size:30px!important;}
}
@media (max-width:980px){
  .smg-home-title{font-size:clamp(38px,11vw,54px)!important;max-width:100%!important;}
  .heroGrid,.hero-grid,.split{grid-template-columns:1fr!important;}
}
@media (max-width:430px){.smg-home-title{font-size:clamp(34px,10vw,44px)!important;}}

/* Card grids: straight, equal, clickable */
.grid,.cards,.smg-media-grid,[class*="grid"],[class*="Grid"],.smg-v28-admin-grid{align-items:stretch!important;gap:clamp(18px,2vw,28px)!important;}
.card,.panel,.smg-card,.smg-media-card,.service-card,.property-card,.job-card,article,.smg-v28-admin-tile,[class*="card"],[class*="Card"],[class*="panel"],[class*="Panel"]{transform:none!important;rotate:0deg!important;box-sizing:border-box!important;min-width:0!important;}
[data-smg-href],.smg-module-clickable{cursor:pointer!important;touch-action:manipulation!important;}

/* Menu discipline */
@media (min-width:981px){.smg-guardian-menu{display:none!important}.smg-guardian-links{display:flex!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}}
@media (max-width:980px){.smg-guardian-menu{display:inline-flex!important;min-height:48px!important;min-width:96px!important;cursor:pointer!important}.smg-guardian-header.is-open .smg-guardian-links,body.smg-menu-open .smg-guardian-links,.smg-guardian-links.open{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;flex-direction:column!important;width:100%!important}}
