/* Targeted corrections. The original layout and compiled design remain intact. */
.hero-viewport { background-image:none; }
.hero-viewport .hero-image { object-fit:cover; object-position:var(--samson-image-x,52%) var(--samson-image-y,42%); }
/* Grow when text or browser zoom requires more room, instead of clipping content. */
.hero-screenshot { height:auto; min-height:100svh; overflow:clip; }
.hero-viewport { min-height:100svh; }
.hero-shell { min-height:calc(100svh - 6.5rem); gap:1.5rem; }
@media (min-width:1024px) { .hero-shell { min-height:calc(100svh - 7rem); } }
/* The admin toolbar must not cover the fixed navigation. */
body.admin-bar header[data-wp-template-part="header"] { top:32px; }
body.admin-bar .hero-viewport { padding-top:calc(6.5rem + 32px); }
@media (max-width:782px) {
  body.admin-bar header[data-wp-template-part="header"] { top:46px; }
  body.admin-bar .hero-viewport { padding-top:calc(6.5rem + 46px); }
}
@media (max-width:600px) { body.admin-bar #wpadminbar { position:fixed; } }
[data-samson-mobile-menu] { overflow-y:auto; overscroll-behavior:contain; }
:where(a,button,input,textarea,select):focus-visible { outline:2px solid #15803d; outline-offset:4px; }
:where(section,div)[id] { scroll-margin-top:8rem; }
/* WordPress editors can add ordinary headings/lists without utility classes. */
.samson-legal-content :where(p,address) { color:var(--muted-foreground); line-height:1.75; margin-bottom:1rem; }
.samson-legal-content :where(h2) { font-size:1.25rem; font-weight:600; margin:1.75rem 0 1rem; }
.samson-legal-content :where(h3) { font-size:1.125rem; font-weight:500; margin:1.25rem 0 .5rem; }
.samson-legal-content :where(ul,ol) { padding-left:1.5rem; margin:1rem 0; }
.samson-legal-content ul { list-style:disc; }.samson-legal-content ol { list-style:decimal; }
.samson-legal-content a { color:var(--primary); text-decoration:underline; }
.samson-legal-content img { max-width:100%; height:auto; }
.samson-consent-dialog { max-height:100dvh; overflow-y:auto; }
.samson-info-banner { position:fixed; inset-inline:0; bottom:0; z-index:60; padding:1rem 1.25rem; color:var(--primary-foreground); background:var(--primary); box-shadow:0 -3px 18px #0002; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } }
body.samson-consent-open { overflow:hidden; }
main.py-24 { padding-top:8.5rem; }
@media (min-width:1024px) { main.py-24 { padding-top:10rem; } }

/* 1.4: restrained refinement of the existing Samson visual language. */
:root {
  --background:#fbfcfa;
  --card:#fff;
  --muted:#eef3ef;
  --muted-foreground:#495c50;
  --border:#d2ddd5;
}
main[data-wp-template] :where(h1,h2,h3,h4) { text-wrap:pretty; }
main[data-wp-template] h2 { font-size:clamp(1.65rem,2.25vw,2rem); line-height:1.22; letter-spacing:-.025em; font-weight:600; }
main[data-wp-template] h3 { letter-spacing:-.012em; line-height:1.35; }
main[data-wp-template] p { text-wrap:pretty; }
main[data-wp-template] .text-muted-foreground { line-height:1.7; }
.hero-title { letter-spacing:-.032em; }
.hero-description { line-height:1.65; text-wrap:pretty; }
.hero-eyebrow { letter-spacing:.025em; }
.hero-proof { font-weight:500; }
.hero-overlay { background:linear-gradient(180deg,rgba(3,23,15,.85) 0%,rgba(4,27,19,.56) 38%,rgba(4,25,17,.34) 64%,rgba(3,21,14,.76) 100%); }
.hero-actions a { border-radius:4px; min-height:46px; font-weight:600; box-shadow:none; }
@media(max-width:639px) {
  .hero-overlay { background:linear-gradient(180deg,#061f17 0% 54%,#061f17e8 65%,#04181259 83%,#03130ed1 100%); }
  .hero-proof { line-height:1.45; }
}
/* Section rhythm, with the existing order, widths, and column counts retained. */
[data-samson-section="partners"], [data-samson-section="certificates"] { padding-block:3.5rem; }
[data-samson-section="company"], [data-samson-section="press"], [data-samson-section="reviews"], [data-samson-section="area"], [data-samson-section="contact"], [data-samson-section="history"], [data-samson-section="values"] { padding-block:4.25rem; }
[data-samson-section="services"] > section { padding-block:4.25rem; }
[data-samson-section="closing"] { padding-block:4rem; }
@media(min-width:1024px) {
  [data-samson-section="partners"], [data-samson-section="certificates"] { padding-block:4.25rem; }
  [data-samson-section="company"], [data-samson-section="press"], [data-samson-section="reviews"], [data-samson-section="area"], [data-samson-section="contact"], [data-samson-section="history"], [data-samson-section="values"] { padding-block:5.5rem; }
  [data-samson-section="services"] > section { padding-block:5rem; }
  [data-samson-section="closing"] { padding-block:4.75rem; }
}
/* Product cards remain product cards, with quieter borders and clear text hierarchy. */
[data-samson-section="services"] [data-slot="card"] { border-color:#cdd9d1; border-radius:6px; box-shadow:none; gap:1rem; }
[data-samson-section="services"] [data-slot="card"]:hover { border-color:#89a692; box-shadow:none; }
[data-samson-section="services"] [data-slot="card-title"] { font-size:1rem; font-weight:600; line-height:1.4; letter-spacing:-.01em; }
[data-samson-section="services"] [data-slot="card-description"] { line-height:1.7; }
[data-samson-section="services"] [data-slot="card-header"] { padding-bottom:.375rem; }
[data-samson-section="services"] [data-slot="card-header"] .bg-primary\/10 { border-radius:4px; background:#edf3ee; }
[data-samson-section="services"] .mb-20 { margin-bottom:3.5rem; }
[data-samson-section="certificates"] .group.rounded { border-radius:6px; background:#f4f7f2; border-color:#d7e1da; box-shadow:none; }
[data-samson-section="certificates"] img { max-height:5.25rem; }
[data-samson-section="certificates"] h3 { font-size:1rem; font-weight:600; }
[data-samson-section="certificates"] p { line-height:1.7; }
[data-samson-section="partners"] img { opacity:1; }
/* Existing contact cards and press block retain their distinct roles. */
[data-samson-section="company"] .p-7.rounded, [data-samson-section="press"] .rounded-lg { border-radius:6px; box-shadow:none; }
[data-samson-section="press"] img { transition:none; }
[data-samson-section="press"] .group:hover img { transform:none; scale:1; }
[data-samson-section="contact"] a.rounded-lg { border-radius:5px; background:#f3f6f2; border-color:#d6e0d7; }
[data-samson-section="contact"] a.rounded-lg:hover { background:#edf3ec; border-color:#8ca794; }
[data-samson-section="contact"] .rounded-full.bg-primary\/10 { background:transparent; }
[data-samson-section="area"] .rounded-full { border-color:#bccfc0; font-weight:500; }
/* Decorative lighting and scaling add noise to the existing craft-business identity. */
[data-samson-section="about-intro"] { background-image:none; background-color:#f2f6f1; }
[data-samson-section="about-intro"] > .absolute.opacity-30 { opacity:0; }
[data-samson-section="about-intro"] h1 { letter-spacing:-.035em; line-height:1.07; }
[data-samson-section="about-intro"] img { border-radius:3px; }
[data-samson-section="values"] .grid > .group { border-radius:6px; box-shadow:none; border-color:#d4dfd6; translate:none; transform:none; }
[data-samson-section="values"] .group .w-14 { border-radius:5px; scale:1; }
[data-samson-section="values"] .grid > .group:hover { border-color:#89a692; box-shadow:none; translate:none; transform:none; }
[data-samson-section="about-intro"] .rounded-lg.shadow-sm { border-radius:6px; box-shadow:none; }
[data-samson-section="history"] .shadow-lg { box-shadow:none; }
main[data-wp-template] .animate-pulse-subtle { animation:none; }
header[data-wp-template-part="header"] a:hover { scale:1; }
footer[data-wp-template-part="footer"] .text-primary-foreground\/40 { color:#a8bfb2; }
footer[data-wp-template-part="footer"] .text-primary-foreground\/60 { color:#bfd0c5; }
.samson-consent-dialog section { border-radius:7px; box-shadow:0 10px 35px #061f1730; }
.samson-consent-dialog button { border-radius:4px; min-height:42px; }
.samson-consent-dialog p { line-height:1.65; }

main.py-24 :where(p,address,li) { line-height:1.75; }
main.py-24 h1 { letter-spacing:-.025em; line-height:1.15; }
main.py-24 h2 { letter-spacing:-.01em; }
[data-samson-section="history"] .rounded-2xl { border-radius:6px; box-shadow:none; }
