/**
 * creART Studio v1.6.5 — Legible golden-ratio typography.
 * Scale: 11 / 18 / 29 / 47 / 76 px (successive ratio ~1.618).
 * The steps express hierarchy; fluid viewport values and compact labels
 * preserve composition without making text inaccessible or cropping faces.
 * Loads LAST after reference-1to1.css so old mockup overrides do not win.
 */
:root {
  --creart-phi: 1.61803398875;
  --creart-scale-xs: 11px;
  --creart-scale-body: 18px;
  --creart-scale-lead: 29px;
  --creart-scale-title: 47px;
  --creart-scale-display: 76px;
}

/* Header: stronger readable navigation on top of the transparent hero. */
.creart-site .primary-menu li a {font-size:clamp(14px,1.04vw,18px)!important; line-height:1.35; font-weight:650;}
.creart-site .primary-menu{gap:clamp(17px,2.25vw,37px)}
.creart-site .header-cta.btn{font-size:clamp(13px,.93vw,17px)!important; min-height:42px; padding:10px 18px; font-weight:700;}
body.home.creart-site .site-header .header-inner{min-height:var(--cm-home-header-h,82px)}

/* Hero: 76px headline, 18px body and actions; preserve three fixed lines. */
.creart-site .cm-hero h1{font-size:clamp(49px,5vw,76px)!important; line-height:.91!important; letter-spacing:-.07em!important; font-weight:900;}
.creart-site .cm-hero .cm-overline{font-size:clamp(11px,.9vw,14px)!important; letter-spacing:.38em; margin-bottom:9px;}
.creart-site .cm-hero-content{width:49%; max-width:740px;}
.creart-site .cm-hero-intro{font-size:clamp(15px,1.08vw,18px)!important; line-height:1.52!important; max-width:420px; margin:12px 0 23px!important; letter-spacing:-.018em;}
.creart-site .cm-hero .brand-bars{margin-bottom:12px;}
.creart-site .cm-button{font-size:clamp(13px,.99vw,17px)!important; min-height:46px; padding:11px 20px; font-weight:700;}
.creart-site .cm-button svg{width:16px; height:16px;}
.creart-site .cm-actions{gap:13px;}

/* Project section uses scale micro / body / lead, with generous card captions. */
.creart-site .cm-projects{padding-top:34px; padding-bottom:28px;}
.creart-site .cm-section-top{margin-bottom:20px; gap:20px;}
.creart-site .cm-section-top h2{font-size:clamp(12px,1vw,17px)!important; letter-spacing:.35em; font-weight:700; line-height:1.4;}
.creart-site .cm-section-top a{font-size:clamp(12px,.88vw,16px)!important; font-weight:700;}
.creart-site .cm-project-caption{min-height:82px; padding-top:15px; align-items:center;}
.creart-site .cm-project-num{font-size:var(--creart-scale-xs); margin-bottom:4px;}
.creart-site .cm-project h3{font-size:clamp(19px,1.6vw,29px)!important; line-height:1.17!important; letter-spacing:-.045em; margin-bottom:5px; font-weight:800;}
.creart-site .cm-project p{font-size:clamp(10px,.78vw,13px)!important; letter-spacing:.14em; line-height:1.5!important;}
.creart-site .cm-round-arrow{width:44px; height:44px;}

/* Anniversary: 47px headline / 29px numerical highlights / 18px paragraphs. */
.creart-site .cm-anniversary{min-height:290px; padding-top:31px; padding-bottom:31px; grid-template-columns:33% 31% 36%;}
.creart-site .cm-anniv-copy{padding-left:clamp(18px,2.3vw,41px); padding-right:clamp(12px,1.5vw,26px);}
.creart-site .cm-anniv-overline{font-size:clamp(11px,.85vw,14px); margin-bottom:10px;}
.creart-site .cm-anniv-copy h2{font-size:clamp(31px,3.03vw,47px)!important; line-height:1.01!important; letter-spacing:.013em; font-weight:850; margin-bottom:12px;}
.creart-site .cm-anniv-copy p{font-size:clamp(13px,.96vw,18px)!important; line-height:1.5!important; max-width:350px; margin-top:11px!important;}
.creart-site .cm-stat strong{font-size:clamp(19px,1.62vw,29px);}
.creart-site .cm-stat span{font-size:clamp(9px,.65vw,11px); line-height:1.3; margin-top:8px;}

/* CTA: bold golden-scale 47px message / 18px supporting line. */
.creart-site .cm-cta{min-height:285px;}
.creart-site .cm-cta h2{font-size:clamp(35px,3.1vw,47px)!important; line-height:.96!important; font-weight:900;}
.creart-site .cm-cta .cm-overline{font-size:clamp(11px,.77vw,14px)!important;}
.creart-site .cm-cta-copy p:not(.cm-overline){font-size:clamp(13px,1.03vw,18px)!important; line-height:1.5!important; max-width:540px; margin-bottom:15px!important;}
.creart-site .cm-cta .cm-button{font-size:clamp(13px,.94vw,17px)!important; min-height:43px;}
.creart-site .cm-cta-side span{font-size:11px; line-height:1.95;}

/* Compact footer becomes legible while retaining its four visual groups. */
.creart-site .footer-main-row{grid-template-columns:minmax(112px,145px) minmax(325px,1fr) auto minmax(202px,260px); gap:clamp(12px,1.5vw,27px); min-height:95px;}
.creart-site .footer-nav .footer-menu{gap:clamp(11px,1.2vw,23px);}
.creart-site .footer-nav .footer-menu a{font-size:clamp(12px,.85vw,15px)!important;}
.creart-site .footer-contact-mini a,
.creart-site .footer-contact-mini span{font-size:clamp(11px,.73vw,13px); line-height:1.45;}
.creart-site .footer-bottom-row{font-size:clamp(10px,.7vw,12px);}
.creart-site .footer-bottom-row span:last-child{font-size:clamp(8px,.58vw,11px); letter-spacing:.21em;}

/* Internal pages: same editorial scale, with legible functional controls. */
.creart-site:not(.home) .interior-heading h1,
.creart-site:not(.home) .page-banner h1{font-size:clamp(47px,5vw,76px)!important;}
.creart-site:not(.home) .section-heading h2{font-size:clamp(31px,3.05vw,47px)!important;}
.creart-site:not(.home) .interior-service-text h2,
.creart-site:not(.home) .interior-project-info h3{font-size:clamp(21px,2vw,29px)!important;}
.creart-site:not(.home) .interior-intro{font-size:clamp(18px,1.42vw,23px)!important;}
.creart-site:not(.home) .editorial-content p,
.creart-site:not(.home) .interior-service-text p,
.creart-site:not(.home) .interior-project-info p,
.creart-site:not(.home) .contact-information p{font-size:clamp(16px,1vw,18px)!important; line-height:1.6;}

@media(max-width:1400px) and (min-width:981px){
  .creart-site .footer-main-row{grid-template-columns:minmax(108px,132px) minmax(270px,1fr) auto;}
  .creart-site .footer-contact-mini{grid-column:1/-1; flex-direction:row; flex-wrap:wrap; border-top:1px solid #eee; padding-top:10px; gap:17px;}
  .creart-site .cm-anniv-copy h2{font-size:clamp(30px,3.2vw,44px)!important;}
  .creart-site .cm-anniv-copy p{font-size:clamp(13px,1.16vw,16px)!important;}
}
@media(max-width:980px){
  .creart-site .primary-nav .primary-menu li a{font-size:18px!important;}
  .creart-site .cm-hero-content{width:50%; max-width:none;}
  .creart-site .cm-hero h1{font-size:clamp(34px,4.8vw,48px)!important;}
  .creart-site .cm-hero-intro{font-size:clamp(14px,1.65vw,16px)!important; max-width:310px;}
  .creart-site .cm-anniversary{grid-template-columns:33% 31% 36%; min-height:230px; padding-top:23px; padding-bottom:23px;}
  .creart-site .cm-anniv-copy{padding:0 12px 0 16px;}
  .creart-site .cm-anniv-copy h2{font-size:clamp(24px,3vw,33px)!important;}
  .creart-site .cm-anniv-copy p{font-size:clamp(11px,1.4vw,14px)!important;}
  .creart-site .cm-stat strong{font-size:clamp(17px,2vw,22px)}
  .creart-site .cm-stat span{font-size:9px;}
  .creart-site .footer-main-row{grid-template-columns:112px 1fr auto;}
  .creart-site .footer-contact-mini{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:12px;}
}
@media(max-width:700px){
  .creart-site .site-header .header-inner{min-height:var(--cm-home-header-h,68px)}
  .creart-site .cm-hero{height:auto;}
  .creart-site .cm-hero-content{width:100%;max-width:100%;padding:34px 22px 31px;}
  .creart-site .cm-hero h1{font-size:clamp(29px,9vw,52px)!important; line-height:.94!important; letter-spacing:-.073em!important;}
  .creart-site .cm-hero .cm-overline{font-size:11px!important;letter-spacing:.32em;}
  .creart-site .cm-hero-intro{font-size:clamp(15px,4vw,18px)!important; max-width:530px; line-height:1.56!important;}
  .creart-site .cm-actions .cm-button{font-size:clamp(13px,3.45vw,16px)!important; min-height:46px; padding:10px 14px;}
  .creart-site .cm-projects{padding:32px 20px 30px;}
  .creart-site .cm-section-top h2{font-size:clamp(11px,2.9vw,15px)!important; letter-spacing:.26em;}
  .creart-site .cm-section-top a{font-size:clamp(12px,3.1vw,15px)!important;}
  .creart-site .cm-project h3{font-size:clamp(22px,5.3vw,29px)!important;}
  .creart-site .cm-project p{font-size:clamp(11px,2.9vw,13px)!important;}
  .creart-site .cm-anniversary{display:flex;flex-direction:column;min-height:auto;padding:34px 20px;gap:25px;}
  .creart-site .cm-anniv-copy{padding:0;}
  .creart-site .cm-anniv-copy h2{font-size:clamp(34px,8.4vw,47px)!important;}
  .creart-site .cm-anniv-copy p{font-size:clamp(15px,3.8vw,18px)!important;}
  .creart-site .cm-stat strong{font-size:clamp(20px,4.6vw,29px);}
  .creart-site .cm-stat span{font-size:clamp(8px,2.3vw,11px);}
  .creart-site .cm-cta{min-height:310px;}
  .creart-site .cm-cta h2{font-size:clamp(31px,7.9vw,46px)!important;}
  .creart-site .cm-cta-copy p:not(.cm-overline){font-size:clamp(14px,3.9vw,17px)!important;max-width:360px;}
  .creart-site .cm-cta .cm-button{font-size:clamp(13px,3.4vw,16px)!important;}
  .creart-site .footer-main-row{grid-template-columns:1fr auto;gap:15px;}
  .creart-site .footer-nav .footer-menu a{font-size:clamp(13px,3.4vw,16px)!important;}
  .creart-site .footer-contact-mini{grid-column:1/-1;display:flex;flex-direction:column;}
  .creart-site .footer-contact-mini a,.creart-site .footer-contact-mini span{font-size:13px;}
  .creart-site .footer-bottom-row{font-size:11px;}
  .creart-site .footer-bottom-row span:last-child{font-size:10px;}
}
@media(max-width:390px){
 .creart-site .cm-hero h1{font-size:clamp(28px,8.65vw,34px)!important;}
 .creart-site .cm-actions{flex-direction:column;align-items:stretch;}
 .creart-site .cm-actions .cm-button{width:100%;}
 .creart-site .cm-stat strong{font-size:clamp(18px,4.4vw,21px);}
}
/* Give enlarged lettering its own vertical space beneath the overlay header
   between mobile and wide desktop widths. No clipping of hero copy or logo. */
@media(min-width:701px) and (max-width:1190px){
  body.home.creart-site .cm-hero{height:clamp(480px,50vw,560px)!important;}
  body.home.creart-site .cm-hero-content{top:calc(50% + 21px);}
}
