/* Visitor layouts: artwork is shown completely, with copy beside it. */
.project-cards-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.project-cards-row.single-project { grid-template-columns:1fr; }
a.project-card { height:auto; min-width:0; text-decoration:none; color:inherit; }
.project-card-thumb-wrap, .project-cards-row.single-project .project-card-thumb-wrap { height:auto; flex:none; aspect-ratio:16/9; background:#f4f2ee; }
.project-card-image { width:100%; height:100%; object-fit:contain; }
.project-card-footer { min-height:70px; }
.project-card-title { white-space:normal; overflow-wrap:break-word; }
.project-card:focus-visible, .p-card-item:focus-visible { outline:3px solid #a9772a; outline-offset:4px; }
.p-card-thumb, .p-card-item:nth-child(n+4) .p-card-thumb { aspect-ratio:16/9; background:#f4f2ee; }
.p-card-thumb img, .p-card-thumb.p-card-ref img { opacity:1; object-fit:contain; transform:none; }
.p-card-thumb.p-card-ref { background-image:none; }
.p-card-badge { position:static; display:inline-block; margin:0 0 10px; line-height:1.4; }
.p-card-thumb .p-card-badge { position:absolute; } /* Legacy markup fallback. */
.detail-breadcrumb-bar { position:static; padding-top:20px; padding-bottom:16px; }
.detail-hero-section { height:auto; min-height:0; background:#faf9f6; }
.detail-hero-section::before, .detail-hero-section::after { display:none; }
.detail-hero-section > .container { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.25fr); align-items:center; gap:36px; padding-top:24px; padding-bottom:32px; width:100%; }
.detail-hero-left { max-width:none; padding:0; }
.detail-hero-title, .detail-hero-title.long-title { font-size:clamp(28px,3.4vw,48px); white-space:normal; overflow-wrap:break-word; }
.detail-cover-image { display:block; width:100%; height:auto; max-height:480px; object-fit:contain; }
.detail-sidebar { margin-top:0; }
.page-project-detail .whatsapp-float { display:none; }
#inquiry-form { scroll-margin-top:100px; }
#projeler { scroll-margin-top:96px; }
.public-alert { padding:16px; border:1px solid; margin-bottom:20px; border-radius:5px; line-height:1.6; font-size:14px; }
.public-alert.error { background:#fff1f1; color:#8c2020; border-color:#e4b4b4; }
.public-alert.success { background:#edf8ef; color:#205c32; border-color:#a6d3ae; }
.public-empty { padding:36px; border:1px solid #e6e1d8; border-radius:6px; background:#faf9f6; line-height:1.8; }
.public-empty a { display:inline-block; margin-top:16px; color:#805a21; text-decoration:underline; }
.news-detail { max-width:850px; margin:auto; padding:120px 24px 70px; }
.news-detail h1 { font-family:var(--font-serif); font-size:clamp(30px,4vw,50px); margin:20px 0; }
.news-detail img { width:100%; max-height:480px; object-fit:contain; margin:20px 0; }
.news-detail .article-content { line-height:1.8; }
.news-detail p { margin-bottom:16px; }
@media(max-width:991px) {
  .detail-hero-section > .container { grid-template-columns:1fr; gap:24px; }
  .detail-hero-left { padding-top:0; }
  .detail-cover-image { max-height:none; }
}
@media(max-width:600px) {
  .project-cards-row { grid-template-columns:1fr; }
  .project-card-thumb-wrap { height:auto; }
  .detail-hero-title, .detail-hero-title.long-title { font-size:32px; }
  .detail-hero-section > .container { padding-top:16px; padding-bottom:24px; }
  .detail-page-wrapper { padding-top:64px; }
}

/* OSKO visual system: generous spacing, restrained gold and readable content. */
:root { --osko-ink:#242b31; --osko-copy:#5d656d; --osko-gold:#a77c37; --osko-soft:#f8f7f3; }
body { line-height:1.65; }
.public-line-icon { width:19px; height:19px; flex-shrink:0; fill:none; stroke:#a77c37; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; vertical-align:middle; }
.office-row .public-line-icon { margin-top:4px; }
.container, .site-header .container, .projects-page-wrapper .container, .detail-page-wrapper .container {
  max-width:1440px; margin-inline:auto; padding-left:48px; padding-right:48px;
}
.site-header, [data-theme="light"] .site-header { height:80px; border-bottom:1px solid #ebe8e1; box-shadow:none; }
.site-header .brand-logo, .site-header .brand-logo-image { width:194px; height:74px; }
.site-header .main-nav .nav-item a { font-size:11px; font-weight:600; letter-spacing:.6px; }
.site-header .btn-header-contact { min-height:44px; padding:12px 22px; border-radius:4px; }
.page-index .hero-section { padding-top:80px; min-height:640px; }
.hero-title { letter-spacing:-1.5px; }
.hero-title .title-gold { white-space:normal; }
.hero-description { line-height:1.8; }
.hero-eyebrow { line-height:1.8; }
.hero-slider-indicators { display:none; }
.btn-primary-gold, .btn-gold, .btn-gold-action, .btn-sidebar-submit, .btn-banner-gold {
  min-height:48px; border-radius:4px; padding:14px 24px; letter-spacing:1px;
  background:linear-gradient(115deg,#d6b56b,#b48a40); color:#252b31; box-shadow:0 4px 12px #8d682116;
}
.page-index .projects-section { padding:40px 0; }
.projects-layout-grid { grid-template-columns:240px minmax(0,1fr); gap:28px; align-items:center; }
.page-index .projects-heading { font-size:32px; line-height:1.13; letter-spacing:-.7px; }
.projects-description { font-size:13px; line-height:1.8; }
.projects-eyebrow { font-size:10px; letter-spacing:3px; line-height:1.8; }
.project-cards-row { grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.project-cards-row.single-project { grid-template-columns:minmax(0,340px); }
a.project-card, .p-card-item, .s-card-item, .news-card {
  border:1px solid #e9e5dd; border-radius:8px; background:#fff; box-shadow:0 8px 28px #18222b06;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
a.project-card:hover, .p-card-item:hover { transform:translateY(-4px); border-color:#ceb88d; box-shadow:0 14px 32px #18222b10; }
.project-card:hover .project-card-image { transform:none; }
.project-card-footer { padding:12px 14px; min-height:64px; }
.project-meta-block { min-width:0; }
.project-card-footer { gap:10px; }
.page-index .project-card-title { font-size:12px; font-weight:600; letter-spacing:.2px; line-height:1.5; color:#252b33 !important; }
.project-card-status { display:none; }
.project-card-city { margin-top:5px; font-size:11px; letter-spacing:1px; }
.statistics-bar, [data-theme="light"] .statistics-bar { padding:32px 0; background:#f8f7f3; border-color:#eae5dc; }
.projects-page-wrapper, .services-page-wrapper, .detail-page-wrapper { padding-top:80px; }
.p-hero-section, .s-hero-section { min-height:350px; height:auto; padding:56px 0; }
.p-hero-title, .s-hero-title { line-height:1.08; letter-spacing:-1px; }
.p-hero-desc, .s-hero-desc { font-size:15px; line-height:1.8; max-width:550px; }
.p-grid-section, .s-grid-section { padding:56px 0 72px; }
.p-grid-head { gap:24px; margin-bottom:32px; }
.p-filter-pill { min-height:44px; font-size:10px; font-weight:600; border-radius:4px; padding:10px 16px; }
.p-city-select { min-height:44px; font-size:12px; border-radius:4px; }
.p-cards-grid, .s-cards-grid { gap:28px; }
.p-card-body, .p-card-item:nth-child(n+4) .p-card-body, .s-card-body { padding:22px; min-height:0; }
.p-card-title { font-size:17px; line-height:1.4; letter-spacing:.1px; margin-bottom:10px; }
.p-card-desc { font-size:13px; line-height:1.75; max-height:none; -webkit-line-clamp:3; margin-bottom:18px; }
.p-card-location { font-size:10px; line-height:1.7; letter-spacing:.4px; }
.p-card-badge { font-size:9px; padding:5px 9px; letter-spacing:.8px; border-radius:3px; }
.p-card-link { font-size:12px; color:#815d26; text-decoration:none; font-weight:600; }
.p-stats-strip { padding:30px 0; background:#f8f7f3; }
.detail-breadcrumb-bar { padding-top:22px; padding-bottom:22px; font-size:11px; }
.page-project-detail .detail-hero-section { background:#f8f7f3; border-block:1px solid #eee9df; }
.detail-hero-section > .container { padding-top:40px; padding-bottom:40px; gap:48px; }
.detail-cover-image { border-radius:5px; box-shadow:0 12px 40px #1a23290d; }
.detail-eyebrow { color:#947035; font-size:10px; line-height:1.8; letter-spacing:2.5px; margin-bottom:14px; }
.detail-hero-title, .detail-hero-title.long-title { line-height:1.07; font-weight:600; letter-spacing:-.7px; margin-bottom:18px; }
.detail-hero-desc { font-size:15px; line-height:1.8; max-width:500px; margin-bottom:26px; }
.quick-specs-bar { padding:24px 0; border-bottom:1px solid #eee9e0; }
.quick-specs-grid { padding-right:0; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:22px; }
.spec-label { font-size:10px; letter-spacing:1px; }
.spec-value { font-size:15px; white-space:normal; }
.detail-body-section { padding:56px 0 80px; background:#fff; }
.detail-body-grid { grid-template-columns:minmax(0,1fr) 330px; gap:40px; }
.detail-about-box { display:block; }
.detail-section-title { font-size:30px; font-weight:600; line-height:1.3; margin:0 0 22px; }
.detail-about-text { font-size:15px; line-height:1.9; max-width:740px; margin-bottom:32px; }
.detail-about-text p { margin-bottom:16px; }
.detail-gallery-heading { display:flex; justify-content:space-between; align-items:baseline; gap:12px; font-size:24px; margin-bottom:16px; }
.detail-gallery-heading::after { display:none; }
.detail-gallery-heading span { font:500 11px var(--font-sans); color:#72756f; letter-spacing:.7px; }
.detail-gallery-row { grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:28px; }
.gallery-photo-thumb { height:140px; aspect-ratio:auto; border-radius:6px; }
.gallery-more-btn { font-size:11px; letter-spacing:.6px; padding:16px; }
.amenities-row { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:40px; }
.amenity-card { padding:20px 12px; border-radius:6px; background:#faf9f6; box-shadow:none; }
.amenity-name { font-size:12px; line-height:1.5; }
.plans-and-progress-row { gap:24px; margin-bottom:40px; }
.project-location-summary { font-size:14px; line-height:1.8; margin-bottom:32px; }
.detail-sidebar { top:100px; gap:20px; }
.sidebar-card { padding:26px; border-radius:8px; box-shadow:0 8px 36px #18222b08; border-color:#e9e5dd; }
.sidebar-project-name { font-size:25px; line-height:1.25; margin-bottom:16px; }
.btn-phone-call { font-size:20px; padding:8px 0; margin-bottom:12px; }
.btn-whatsapp-chat { min-height:46px; border-radius:4px; margin-bottom:24px; }
.sidebar-form-title { font-size:12px; line-height:1.7; margin-bottom:14px; }
.sidebar-input, .sidebar-textarea { padding:13px 14px; margin-bottom:12px; font-size:14px; border:1px solid #dedfdc; border-radius:4px; background:#fcfcfa; }
.sidebar-textarea { min-height:100px; }
.btn-sidebar-submit { width:100%; font-size:11px; }
.similar-projects-row { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.similar-card { flex-direction:column; padding:0; border:1px solid #e9e5dd; border-radius:6px; overflow:hidden; }
.similar-thumb { width:100%; height:auto; aspect-ratio:16/9; border-radius:0; }
.similar-thumb img { object-fit:contain; }
.similar-info { padding:16px; }
.similar-title { font-size:12px; line-height:1.5; white-space:normal; }
.similar-desc { font-size:11px; line-height:1.7; margin-top:8px; }
.similar-link { font-size:11px; margin-top:10px; }
.kurumsal-wrap, .news-wrap, .contact-page-wrap { padding:136px 0 80px; }
.osko-page-heading { margin-bottom:48px; padding-bottom:32px; }
.osko-page-heading h1 { line-height:1.08; letter-spacing:-1px; margin-bottom:18px; }
.osko-page-heading p { font-size:15px; line-height:1.8; }
.story-grid { gap:56px; align-items:center; margin-bottom:56px; }
.story-img-wrap { border-radius:8px; box-shadow:none; }
.story-text, .vm-desc { font-size:15px; line-height:1.9; }
.vm-card { padding:36px; border-radius:8px; box-shadow:none; background:#f8f7f3; }
.s-card-title { font-size:20px; line-height:1.3; font-family:var(--font-serif); }
.s-card-desc { font-size:14px; line-height:1.8; }
.contact-grid { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:40px; align-items:start; }
.office-card { padding:32px; border-radius:8px; box-shadow:none; background:#f8f7f3; }
.office-name { font-size:28px; line-height:1.25; }
.office-row { font-size:14px; line-height:1.9; }
.contact-form-card { padding:36px; border-radius:8px; box-shadow:0 12px 40px #18222b08; }
.form-title { font-size:32px; line-height:1.3; }
.form-sub { line-height:1.8; margin-bottom:26px; }
.form-label { font-size:10px; letter-spacing:1px; margin-bottom:9px; }
.form-input, .form-select, .form-textarea { padding:14px 16px; min-height:48px; background:#fcfcfa; }
.form-input:focus, .form-select:focus, .form-textarea:focus, .sidebar-input:focus, .sidebar-textarea:focus { outline:2px solid #cfb58355; outline-offset:2px; }
.public-empty { padding:40px; max-width:820px; background:#f8f7f3; }
.public-empty h2 { font-family:var(--font-serif); font-size:32px; line-height:1.2; font-weight:600; margin-bottom:16px; }
.public-empty p { font-size:14px; color:#5d656d; }
.site-footer, [data-theme="light"] .site-footer { padding:28px 0 16px; background:#f8f7f3; border-top:1px solid #e8e3d9; }
.site-footer .footer-grid { gap:32px; margin-bottom:20px; grid-template-columns:1.5fr 1fr 1fr 1.5fr; }
.footer-brand-logo img { display:block; width:150px; height:auto; mix-blend-mode:multiply; }
.site-footer .footer-col-title { font-size:10px; letter-spacing:1.5px; margin-bottom:10px; }
.site-footer .footer-links { gap:0; }
.site-footer .footer-links a, .site-footer .footer-col-desc, .site-footer .footer-contact-item { font-size:12px; line-height:1.7; }
.site-footer .footer-links a { display:inline-block; padding:3px 0; }
.site-footer .footer-links li { margin:0; }
.site-footer .footer-col-desc { margin-top:8px; max-width:260px; }
.site-footer .footer-contact-item { margin-bottom:8px; gap:10px; }
.site-footer .footer-bottom { padding-top:14px; font-size:11px; }
#lightboxImg { max-width:calc(100% - 40px) !important; max-height:78vh !important; }
#galleryModal button[aria-label="Önceki fotoğraf"], #galleryModal button[aria-label="Sonraki fotoğraf"] { top:auto !important; bottom:10px; width:44px !important; height:44px !important; transform:none !important; }
#galleryCounter { bottom:22px !important; }
@media(max-width:1199px) {
  .page-index .projects-layout-grid { display:block; }
  .page-index .projects-editorial { display:none; }
  .page-index .projects-mobile-head { display:block; margin:0 0 22px; }
  .page-index .projects-mobile-top-row { display:flex; align-items:center; justify-content:space-between; gap:24px; }
  .page-index .projects-mobile-top-row .projects-heading { font-size:30px; line-height:1.16; margin:0; max-width:450px; }
  .page-index .projects-mobile-top-row .projects-cta-link { flex-shrink:0; margin:0; padding:10px 0; min-height:44px; display:inline-flex; align-items:center; font-size:10px; }
  .page-index .projects-mobile-head .projects-eyebrow { display:block; font-size:9px; letter-spacing:2px; margin-bottom:8px; }
  .page-index .projects-mobile-head .projects-description { margin:12px 0 0; max-width:600px; }
  .page-index .project-cards-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:0; }
  .page-index .project-cards-row.single-project { grid-template-columns:minmax(0,360px); }
  .page-index .project-card-footer { padding:14px 16px; min-height:88px; align-items:center; }
  .page-index .project-card-title { font-size:14px; line-height:1.45; letter-spacing:0; }
  .page-index .project-card-status { display:block; margin-top:6px; font-size:11px; line-height:1.5; color:#766342; }
  .page-index .project-card-city { display:none; }
  .page-index .project-card-arrow { display:block; font-size:20px; color:#a9772a; }
  .projects-page-wrapper .p-cards-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
  .projects-page-wrapper .p-card-body, .projects-page-wrapper .p-card-item:nth-child(n+4) .p-card-body { padding:16px; }
  .projects-page-wrapper .p-card-title { font-size:14px; line-height:1.45; min-height:41px; margin-bottom:10px; }
  .projects-page-wrapper .p-card-desc, .projects-page-wrapper .p-card-location { display:none; }
  .projects-page-wrapper .p-card-badge { background:none; padding:0; color:#766342; font-size:10px; letter-spacing:0; margin-bottom:8px; }
  .projects-page-wrapper .p-card-link { font-size:11px; }
}
@media(min-width:992px) and (max-width:1199px) {
  .page-index .project-cards-row, .projects-page-wrapper .p-cards-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
  .page-index .project-card-title { font-size:12px; min-height:35px; }
  .page-index .project-card-arrow { display:none; }
}
@media(max-width:1100px) {
  .container, .site-header .container, .projects-page-wrapper .container, .detail-page-wrapper .container { padding-inline:32px; }
  .projects-layout-grid { grid-template-columns:230px minmax(0,1fr); gap:28px; }
  .detail-body-grid { grid-template-columns:minmax(0,1fr) 300px; gap:28px; }
}
@media(max-width:991px) {
  .site-footer .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
  .site-header, [data-theme="light"] .site-header { height:72px; }
  .site-header .brand-logo, .site-header .brand-logo-image { height:68px; width:180px; }
  .projects-page-wrapper, .services-page-wrapper, .detail-page-wrapper { padding-top:72px; }
  .detail-body-grid, .contact-grid { grid-template-columns:1fr; }
  .detail-sidebar { position:static; }
  .detail-hero-section > .container { gap:28px; }
  .detail-hero-desc { max-width:650px; }
  .story-grid { gap:32px; }
  .p-cards-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:767px) {
  .container, .site-header .container, .projects-page-wrapper .container, .detail-page-wrapper .container { padding-inline:22px; }
  .site-header, [data-theme="light"] .site-header { height:68px; }
  .site-header .brand-logo, .site-header .brand-logo-image { width:174px; height:64px; }
  .page-index .hero-section { padding-top:68px; min-height:570px; }
  .hero-title { font-size:clamp(36px,10vw,54px); line-height:1.08; letter-spacing:-.8px; }
  .hero-description { font-size:14px; line-height:1.85; }
  .hero-eyebrow { font-size:9px; letter-spacing:2px; }
  .page-index .projects-section { padding:28px 0; }
  .projects-layout-grid { display:block; }
  .page-index .project-cards-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .page-index .projects-mobile-head { margin-bottom:18px; }
  .page-index .projects-mobile-top-row { gap:16px; }
  .page-index .projects-mobile-top-row .projects-heading { font-size:26px; }
  .page-index .projects-mobile-top-row .projects-cta-link { font-size:8px; letter-spacing:.8px; gap:6px; }
  .page-index .projects-mobile-head .projects-description { display:none; }
  .page-index .project-card-footer { padding:11px 10px; min-height:90px; }
  .page-index .project-card-title { font-size:11px; line-height:1.5; min-height:33px; }
  .page-index .project-card-status { font-size:10px; margin-top:4px; }
  .page-index .project-card-arrow { display:none; }
  .page-index a.project-card { border-radius:6px; box-shadow:0 3px 14px #18222b05; }
  .projects-mobile-head { margin-bottom:18px; }
  .projects-heading { font-size:32px; }
  .project-card-footer { padding:12px 14px; min-height:62px; }
  .projects-page-wrapper, .services-page-wrapper, .detail-page-wrapper { padding-top:68px; }
  .p-hero-section, .s-hero-section { min-height:310px; height:auto; padding:44px 0; }
  .p-hero-title, .s-hero-title { font-size:38px; }
  .p-hero-desc, .s-hero-desc { font-size:14px; line-height:1.8; }
  .p-grid-section, .s-grid-section { padding:32px 0 44px; }
  .p-cards-grid, .s-cards-grid { grid-template-columns:1fr; gap:24px; }
  .projects-page-wrapper .p-cards-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .projects-page-wrapper .p-card-body, .projects-page-wrapper .p-card-item:nth-child(n+4) .p-card-body { padding:12px 10px; }
  .projects-page-wrapper .p-card-badge { background:none; padding:0; color:#766342; font-size:9px; letter-spacing:0; margin-bottom:7px; }
  .projects-page-wrapper .p-card-title { font-size:12px; line-height:1.45; min-height:35px; margin-bottom:9px; }
  .projects-page-wrapper .p-card-desc, .projects-page-wrapper .p-card-location { display:none; }
  .projects-page-wrapper .p-card-link { font-size:10px; margin-top:0; }
  .projects-page-wrapper .p-grid-head { align-items:stretch; gap:12px; }
  .projects-page-wrapper .p-grid-head form, .projects-page-wrapper .p-city-select { width:100%; }
  .p-filter-pills { gap:8px; }
  .p-filter-pill { font-size:9px; min-height:42px; padding:8px 5px; white-space:normal; text-align:center; line-height:1.5; }
  .p-grid-head { margin-bottom:24px; }
  .detail-breadcrumb-bar { font-size:10px; line-height:1.8; padding-block:18px; }
  .detail-hero-section > .container { padding-block:28px; }
  .detail-hero-title, .detail-hero-title.long-title { font-size:36px; line-height:1.08; }
  .detail-hero-desc { font-size:14px; }
  .detail-eyebrow { font-size:9px; letter-spacing:1.8px; }
  .detail-body-section { padding:36px 0 48px; }
  .detail-section-title { font-size:27px; }
  .detail-about-text { font-size:14px; line-height:1.9; }
  .detail-gallery-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .gallery-photo-thumb { height:112px; }
  .gallery-more-btn { font-size:9px; letter-spacing:0; padding:8px; }
  .amenities-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .plans-and-progress-row { grid-template-columns:1fr; }
  .similar-projects-row { grid-template-columns:1fr; }
  .similar-card { display:grid; grid-template-columns:40% 1fr; align-items:center; }
  .similar-thumb { aspect-ratio:4/3; }
  .sidebar-card { padding:24px; }
  .sidebar-input, .sidebar-textarea, .form-input, .form-select, .form-textarea { font-size:16px; }
  .kurumsal-wrap, .news-wrap, .contact-page-wrap { padding:104px 0 48px; }
  .osko-page-heading { margin-bottom:30px; padding-bottom:24px; }
  .osko-page-heading h1 { font-size:40px; line-height:1.1; }
  .osko-page-heading p { font-size:14px; }
  .story-title { font-size:30px; line-height:1.2; }
  .story-text, .vm-desc { font-size:14px; }
  .vm-card, .office-card, .contact-form-card { padding:24px; }
  .form-row { grid-template-columns:1fr; }
  .public-empty { padding:26px; }
  .public-empty h2 { font-size:28px; }
  .site-footer, [data-theme="light"] .site-footer { padding:24px 0 16px; }
  .site-footer .footer-grid { gap:32px; }
  .mobile-sticky-bar { height:64px; }
  .mobile-sticky-link { font-size:8px; letter-spacing:0; min-width:0; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  a.project-card, .p-card-item, .project-card-image { transition:none; }
}

/* A single masthead component is rendered on every public page. */
body .public-page-shell { padding:80px 0 0; }
.public-hero { position:relative; isolation:isolate; background:#faf9f6; border-bottom:1px solid #ebe7de; }
.public-hero-backdrop { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 45%; z-index:-2; }
.public-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 27%,rgba(255,255,255,.82) 48%,rgba(255,255,255,.06) 76%); }
.public-hero .public-hero-inner { min-height:340px; display:grid; align-items:center; padding-top:32px; padding-bottom:32px; gap:32px; }
.public-hero-copy { min-width:0; width:60%; max-width:600px; align-self:start; }
.public-hero-eyebrow { display:block; font:600 10px/1.7 var(--font-sans); letter-spacing:2.4px; text-transform:uppercase; color:#956b2c; margin:0 0 12px; }
.public-hero .public-hero-title { font-family:var(--font-serif); font-size:48px; font-weight:500; line-height:1.06; letter-spacing:-.8px; color:#252b33; margin:0 0 16px; overflow-wrap:break-word; }
.public-hero-title > span { display:block; color:#ae8135; }
.public-hero-description { max-width:560px; font:400 14px/1.8 var(--font-sans); color:#4b5563; margin:0; }
.public-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:18px; }
.public-hero-cta, .public-hero-video { display:inline-flex; justify-content:center; align-items:center; gap:12px; min-height:44px; padding:11px 18px; border-radius:4px; font:600 10px/1.5 var(--font-sans); letter-spacing:.7px; text-decoration:none; cursor:pointer; }
.public-hero-cta { color:#252b33; background:linear-gradient(115deg,#d6b56b,#b48a40); border:1px solid transparent; }
.public-hero-video { color:#51514b; background:#ffffffc9; border:1px solid #d9d3c8; }
.public-hero-cta:hover { filter:brightness(.96); }
.public-hero-cta:focus-visible, .public-hero-video:focus-visible { outline:3px solid #8c6528; outline-offset:3px; }
.public-hero--artwork .public-hero-inner { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.public-hero--artwork .public-hero-copy { width:100%; }
.public-hero-artwork { position:relative; width:100%; min-width:0; align-self:center; }
.public-hero-artwork .detail-cover-image { width:100%; height:260px; max-height:none; object-fit:contain; box-shadow:none; border-radius:4px; }
.public-page-content { padding-top:44px; padding-bottom:64px; }
.public-article-content { padding-top:44px; padding-bottom:64px; }
.public-article-content > a { display:inline-block; margin-bottom:24px; color:#8c6528; }
.home-feature-strip { border-bottom:1px solid #eee9e0; background:#fff; }
.s-cards-grid.verified-service-grid { grid-template-columns:1fr; max-width:900px; margin:0 auto; }
.verified-service-grid .s-card-item { display:grid; grid-template-columns:1fr 1fr; }
.verified-service-grid .s-card-thumb { height:100%; min-height:220px; }
.verified-service-grid .s-card-thumb img { object-fit:contain; }
.verified-service-grid .s-card-body { padding:28px; }
.home-feature-strip .hero-features-bar { position:static; display:flex; width:100%; max-width:none; height:auto; margin:0; padding:20px 0; }
@media(max-width:991px) {
  body .public-page-shell { padding-top:72px; }
  .public-hero .public-hero-title { font-size:42px; }
  .public-hero-copy { width:70%; }
}
@media(max-width:767px) {
  body .public-page-shell { padding-top:68px; }
  .public-hero .public-hero-inner { min-height:310px; padding-top:28px; padding-bottom:28px; gap:22px; }
  .public-hero::before { background:linear-gradient(100deg,rgba(255,255,255,.98),rgba(255,255,255,.9) 65%,rgba(255,255,255,.7)); }
  .public-hero .public-hero-copy { width:100%; }
  .public-hero .public-hero-title { font-size:34px; line-height:1.08; letter-spacing:-.5px; margin-bottom:14px; }
  .public-hero-eyebrow { font-size:9px; letter-spacing:1.5px; margin-bottom:10px; }
  .public-hero-description { font-size:13px; line-height:1.8; }
  .public-hero--artwork .public-hero-inner { grid-template-columns:1fr; }
  .public-hero-artwork .detail-cover-image { height:auto; max-height:180px; }
  .public-page-content, .public-article-content { padding-top:32px; padding-bottom:44px; }
  .home-feature-strip { display:none; }
  .verified-service-grid .s-card-item { grid-template-columns:1fr; }
  .verified-service-grid .s-card-thumb { min-height:0; height:180px; }
}
