/* Self-service template variants, only applied when a tenant explicitly
 * selects a builder design. Default O-LAND Theme is never modified. */
html[data-site-design="modern-portal"] body { background:#f5f8fa; }
html[data-site-design="modern-portal"] .site-header { box-shadow:0 2px 20px rgba(15,40,57,.06); }
html[data-site-design="modern-portal"] .hero-copy-block { background:rgba(255,255,255,.94); border-radius:18px; padding:clamp(18px,3vw,36px); }
html[data-site-design="modern-portal"] .property-item,
html[data-site-design="modern-portal"] .listing-card { border-radius:16px; overflow:hidden; box-shadow:0 6px 24px rgba(19,58,80,.09); background:white; }
html[data-site-design="modern-portal"] .button-primary,
html[data-site-design="modern-portal"] .property-search-button { border-radius:9px; }
html[data-site-design="modern-portal"] #property .property-results-header { border-bottom:2px solid var(--brand); padding-bottom:18px; }

html[data-site-design="editorial-warm"] body { background:#faf8f4; }
html[data-site-design="editorial-warm"] .site-header,
html[data-site-design="editorial-warm"] .site-footer { background:#fbf6ef; }
html[data-site-design="editorial-warm"] .hero-copy-block { background:rgba(255,250,241,.94); border-left:3px solid var(--brand); padding:clamp(16px,2.5vw,32px); }
html[data-site-design="editorial-warm"] .property-item,
html[data-site-design="editorial-warm"] .listing-card { border:1px solid #e7ddcf; background:#fffdf9; }
html[data-site-design="editorial-warm"] .button-primary { border-radius:2px; }

html[data-site-design="minimal-office"] body { background:#fff; }
html[data-site-design="minimal-office"] .site-header { box-shadow:none; border-bottom:1px solid #d9dfe5; }
html[data-site-design="minimal-office"] .hero-copy-block { padding:0; background:transparent; }
html[data-site-design="minimal-office"] .property-item,
html[data-site-design="minimal-office"] .listing-card { border:1px solid #dce4ea; border-radius:2px; box-shadow:none; }
html[data-site-design="minimal-office"] .button-primary { border-radius:2px; }
html[data-site-design="minimal-office"] #property .property-results-header { border-bottom:1px solid #dce4ea; }

@media(max-width:768px) {
 html[data-site-design] .hero-copy-block { margin-inline:0; }
 html[data-site-design="modern-portal"] .property-item { border-radius:10px; }
 html[data-site-design] .site-footer { padding-inline:20px; }
}


/* V1.0 visual layout families — approved direction, Preview QA pending.
   Each variant changes actual FV geometry and card composition, never the
   data model or the ORLAND reference Theme itself. Existing selectors and
   JS/data-ui hooks stay intact. No external fonts/photos or false metrics. */

/* 01 Search-first property portal: foreground the search entry. */
html[data-site-design="modern-portal"] .hero-visual { height:clamp(530px,55vw,670px); }
html[data-site-design="modern-portal"] .hero-copy-block { max-width:990px; top:95px; }
html[data-site-design="modern-portal"] .hero h1 { font-family:var(--font-sans); font-size:clamp(34px,3.9vw,58px); letter-spacing:-.03em; }
html[data-site-design="modern-portal"] .hero-search-panel { max-width:1060px; margin-top:-82px; border-radius:20px; }
html[data-site-design="modern-portal"] .hero-search-panel .hero-quick-submit { border-radius:10px; font-family:var(--font-sans); font-weight:650; }
html[data-site-design="modern-portal"] .hero-service-links { max-width:1000px; gap:8px; }
html[data-site-design="modern-portal"] .hero-service-links a { border:1px solid var(--line); border-radius:12px; background:#fff; }
html[data-site-design="modern-portal"] .hero-service-links a::before { display:none; }

/* 02 Minimal Corporate: distinct split hero, not a colour-only variant. */
html[data-site-design="minimal-corporate"] body { background:#fff; }
html[data-site-design="minimal-corporate"] .site-header { background:#fff; border-bottom:1px solid var(--line); }
html[data-site-design="minimal-corporate"] .hero { background:#fff; }
html[data-site-design="minimal-corporate"] .hero h1 { font-family:var(--font-sans); font-weight:600; letter-spacing:-.035em; }
html[data-site-design="minimal-corporate"] .hero-copy { font-family:var(--font-sans); font-weight:400; }
html[data-site-design="minimal-corporate"] .hero-search-panel { margin-top:28px; border:1px solid var(--line); box-shadow:none; border-radius:0; }
html[data-site-design="minimal-corporate"] .hero-service-links { margin-block:16px 34px; }
html[data-site-design="minimal-corporate"] .property-item,
html[data-site-design="minimal-corporate"] .listing-card { border:1px solid var(--line); border-radius:0; box-shadow:none; }
html[data-site-design="minimal-corporate"] .section-intro { border-bottom:1px solid var(--line); padding-bottom:22px; }
@media(min-width:921px) {
  html[data-site-design="minimal-corporate"] .hero-visual { width:54%; height:590px; margin-left:auto; }
  html[data-site-design="minimal-corporate"] .hero-visual::after { background:linear-gradient(90deg,#ffffff28,transparent 25%); }
  html[data-site-design="minimal-corporate"] .hero-copy-block {
    left:0; right:auto; top:0; width:48%; height:590px;
    padding:clamp(105px,11vw,175px) clamp(30px,5vw,75px) 24px;
    background:#fff; 
  }
  html[data-site-design="minimal-corporate"] .hero h1 { font-size:clamp(36px,3.75vw,64px); line-height:1.4; }
  html[data-site-design="minimal-corporate"] .hero-copy-footer { max-width:570px; }
}

/* 03 Editorial Warm: magazine-like, immersive image and quieter cards. */
html[data-site-design="editorial-warm"] .hero-visual { height:clamp(625px,65vw,780px); }
html[data-site-design="editorial-warm"] .hero-visual::after {
  background:linear-gradient(90deg,rgba(35,25,17,.60),rgba(45,30,15,.18) 62%,transparent);
}
html[data-site-design="editorial-warm"] .hero-copy-block { top:clamp(135px,15vw,200px); }
html[data-site-design="editorial-warm"] .hero h1 { color:#fff; text-shadow:0 2px 14px rgba(0,0,0,.35); max-width:850px; font-size:clamp(37px,4.5vw,68px); }
html[data-site-design="editorial-warm"] .hero-copy { color:#fff; text-shadow:0 1px 10px rgba(0,0,0,.5); }
html[data-site-design="editorial-warm"] .hero-copy-block { background:transparent; border:0; }
html[data-site-design="editorial-warm"] .hero-copy-block .button-outline { background:#fff; }
html[data-site-design="editorial-warm"] .hero-search-panel { background:#fbf5eb; box-shadow:0 16px 38px rgba(65,48,26,.1); }
html[data-site-design="editorial-warm"] #property { background:#fbf7f1; }
html[data-site-design="editorial-warm"] #property .property-grid { gap:clamp(12px,3vw,30px); }
html[data-site-design="editorial-warm"] .property-item figure { aspect-ratio:4/5; }
html[data-site-design="editorial-warm"] .section-heading h2 { font-family:var(--font-serif); }

/* 04 Lifestyle Gallery: image-dominant horizontal canvas with separate right rail. */
html[data-site-design="lifestyle-gallery"] body { background:#f8faf9; }
html[data-site-design="lifestyle-gallery"] .site-header { background:#ffffffee; }
html[data-site-design="lifestyle-gallery"] .hero { background:#f5f8f7; }
html[data-site-design="lifestyle-gallery"] .hero h1 { font-family:var(--font-sans); font-weight:550; letter-spacing:-.045em; }
html[data-site-design="lifestyle-gallery"] .hero-copy { font-family:var(--font-sans); }
html[data-site-design="lifestyle-gallery"] #property .property-item figure { aspect-ratio:1/1; }
html[data-site-design="lifestyle-gallery"] #property .property-grid { gap:12px; }
html[data-site-design="lifestyle-gallery"] .property-item,
html[data-site-design="lifestyle-gallery"] .listing-card { border-radius:3px; box-shadow:none; overflow:hidden; }
html[data-site-design="lifestyle-gallery"] .hero-search-panel { margin-top:14px; border-radius:2px; box-shadow:none; }
@media(min-width:921px) {
  html[data-site-design="lifestyle-gallery"] .hero-visual { width:66%; height:640px; margin:0; }
  html[data-site-design="lifestyle-gallery"] .hero-visual::after { background:linear-gradient(90deg,rgba(8,32,41,.15),transparent); }
  html[data-site-design="lifestyle-gallery"] .hero-copy-block {
    left:auto; right:0; top:0; width:34%; min-height:640px; 
    padding:clamp(92px,10vw,160px) clamp(22px,3.2vw,56px) 30px;
    background:#f6faf9;
  }
  html[data-site-design="lifestyle-gallery"] .hero h1 { font-size:clamp(31px,3vw,48px); line-height:1.35; }
  html[data-site-design="lifestyle-gallery"] .hero-copy-footer { margin-top:32px; }
}

/* 05 Performance: dark visual, evidence-friendly cards, never fabricated metrics. */
html[data-site-design="performance-tech"] body { background:#f1f6f6; }
html[data-site-design="performance-tech"] .hero { background:#142832; }
html[data-site-design="performance-tech"] .hero-visual { height:clamp(590px,60vw,730px); }
html[data-site-design="performance-tech"] .hero-visual::after {
  background:linear-gradient(90deg,rgba(6,18,25,.84),rgba(7,25,32,.48) 64%,rgba(12,37,46,.14));
}
html[data-site-design="performance-tech"] .hero h1 { color:#fff; font-family:var(--font-sans); font-weight:700; font-size:clamp(34px,4.2vw,65px); letter-spacing:-.04em; text-shadow:none; }
html[data-site-design="performance-tech"] .hero-copy { color:#fff; font-family:var(--font-sans); font-weight:500; }
html[data-site-design="performance-tech"] .hero-copy-block { top:clamp(125px,14vw,190px); }
html[data-site-design="performance-tech"] .hero-search-panel { margin-top:0; border-radius:0; background:#fff; box-shadow:0 8px 30px rgba(10,30,40,.2); }
html[data-site-design="performance-tech"] .hero-service-links { gap:8px; }
html[data-site-design="performance-tech"] .hero-service-links a { border:1px solid var(--line); padding:10px; border-radius:3px; background:#fff; }
html[data-site-design="performance-tech"] .hero-service-links a::before { display:none; }
html[data-site-design="performance-tech"] .section-heading h2 { font-family:var(--font-sans); font-weight:700; }
html[data-site-design="performance-tech"] .property-item,
html[data-site-design="performance-tech"] .listing-card { border-radius:2px; border-top:3px solid var(--brand); box-shadow:none; }

/* 06 Trust Premium: editorial full-bleed frame, calm serif and consultations. */
html[data-site-design="trust-premium"] body { background:#fbf8f3; }
html[data-site-design="trust-premium"] .site-header { background:#1d252b; color:#fff; }
html[data-site-design="trust-premium"] .site-header .brand-text,
html[data-site-design="trust-premium"] .site-header a { color:#fff; }
html[data-site-design="trust-premium"] .hero { background:#fbf8f3; }
html[data-site-design="trust-premium"] .hero-visual { height:clamp(650px,62vw,770px); }
html[data-site-design="trust-premium"] .hero-visual::after {
  background:linear-gradient(90deg,rgba(17,20,22,.80),rgba(22,25,28,.28) 75%),linear-gradient(0deg,rgba(20,20,20,.36),transparent 45%);
}
html[data-site-design="trust-premium"] .hero-copy-block { top:clamp(150px,18vw,220px); }
html[data-site-design="trust-premium"] .hero h1 { color:#fff; font-family:var(--font-serif); font-size:clamp(39px,4.8vw,72px); line-height:1.48; letter-spacing:.02em; }
html[data-site-design="trust-premium"] .hero-copy { color:#fff; font-family:var(--font-serif); }
html[data-site-design="trust-premium"] .hero-actions .button-primary { background:#f2e5d0; color:#332819; border-color:#f2e5d0; }
html[data-site-design="trust-premium"] .hero-search-panel { border-radius:0; margin-top:0; box-shadow:none; background:#fbf8f3; }
html[data-site-design="trust-premium"] .hero-service-links { margin-top:18px; }
html[data-site-design="trust-premium"] .hero-service-links a { border:1px solid #d5c9b6; }
html[data-site-design="trust-premium"] .hero-service-links a::before { display:none; }
html[data-site-design="trust-premium"] .property-item,
html[data-site-design="trust-premium"] .listing-card { border-radius:0; border:1px solid #dcd1c0; box-shadow:none; }

/* Structure and visual direction are independent. Responsive/empty-state safe. */
@media(max-width:920px) {
  html[data-site-design="minimal-corporate"] .hero-visual,
  html[data-site-design="lifestyle-gallery"] .hero-visual { width:100%; height:clamp(465px,72svh,600px); margin-left:0; }
  html[data-site-design="minimal-corporate"] .hero-copy-block,
  html[data-site-design="lifestyle-gallery"] .hero-copy-block { position:absolute; top:90px; left:0; right:0; width:100%; min-height:0; padding:0 24px; background:transparent; }
  html[data-site-design="minimal-corporate"] .hero-visual::after,
  html[data-site-design="lifestyle-gallery"] .hero-visual::after { background:linear-gradient(180deg,rgba(250,252,250,.90),rgba(250,252,250,.47) 52%,transparent); }
  html[data-site-design="performance-tech"] .hero-copy-block,
  html[data-site-design="trust-premium"] .hero-copy-block { top:105px; }
  html[data-site-design] .hero-service-links { width:calc(100% - 32px); }
}
@media(max-width:620px) {
  html[data-site-design] .hero-visual { height:clamp(540px,70svh,650px); }
  html[data-site-design] .hero h1 { font-size:clamp(32px,8vw,44px); }
  html[data-site-design] .hero-search-panel { width:calc(100% - 24px); margin-top:-16px; }
  html[data-site-design="minimal-corporate"] .hero-search-panel,
  html[data-site-design="lifestyle-gallery"] .hero-search-panel,
  html[data-site-design="performance-tech"] .hero-search-panel,
  html[data-site-design="trust-premium"] .hero-search-panel { margin-top:12px; }
  html[data-site-design="editorial-warm"] .hero-visual::after,
  html[data-site-design="performance-tech"] .hero-visual::after,
  html[data-site-design="trust-premium"] .hero-visual::after {
    background:linear-gradient(180deg,rgba(5,14,18,.65),rgba(4,17,22,.35) 62%,transparent);
  }
  html[data-site-design="editorial-warm"] .hero-copy-block { top:102px; padding:0 20px; }
  html[data-site-design="editorial-warm"] .hero h1,
  html[data-site-design="performance-tech"] .hero h1,
  html[data-site-design="trust-premium"] .hero h1 { color:#fff; }
  html[data-site-design="editorial-warm"] .hero-copy,
  html[data-site-design="performance-tech"] .hero-copy,
  html[data-site-design="trust-premium"] .hero-copy { color:#fff; }
  html[data-site-design="minimal-corporate"] .hero h1,
  html[data-site-design="lifestyle-gallery"] .hero h1 { color:var(--ink); }
  html[data-site-design] .hero-service-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
