/* creART Studio v1.5 — strict composition based on provided editorial mockup.
 * Golden type scale: 11 / 18 / 29 / 47 / 76 px; phi approx 1.618.
 * Asset images are untouched. All sections are semantic DOM (not a screenshot).
 */
:root{--cm-micro:11px;--cm-body:18px;--cm-lead:29px;--cm-subtitle:47px;--cm-display:76px;--cm-ink:#0c0d10;--cm-cyan:#00baf2;--cm-yellow:#f6eb00;--cm-magenta:#e50085}
.creart-site{font-family:"Montserrat","Arial",Helvetica,sans-serif;color:var(--cm-ink);background:#f3f3f3}
.creart-site .brand-bars{height:10px;width:max-content;display:inline-flex;gap:0;line-height:1}
.creart-site .brand-bars i{display:block!important;width:24px!important;height:10px!important;margin:0!important;border-radius:0!important}
.creart-site .brand-bars i:nth-child(1){background:var(--cm-yellow)}
.creart-site .brand-bars i:nth-child(2){background:var(--cm-cyan)}
.creart-site .brand-bars i:nth-child(3){background:var(--cm-magenta)}
/* Header */
.creart-site .site-header{position:relative!important;inset:auto!important;width:min(100% - 46px,1440px);margin:23px auto 0;background:#fff;border:0;box-shadow:0 -8px 25px #0000000a;border-radius:15px 15px 0 0;z-index:50;backdrop-filter:none}
.creart-site .site-header .header-inner{width:auto;max-width:none;min-height:91px;margin:0 40px;padding:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}
.creart-site .site-brand{justify-self:start;align-items:center}
.creart-site .site-brand .brand-logo-img{max-width:177px;max-height:68px;width:auto;height:auto;object-fit:contain}
.creart-site .primary-nav{justify-self:center;margin:0}
.creart-site .primary-menu{gap:clamp(16px,2.4vw,36px)}
.creart-site .primary-menu li a{font-size:14px;font-weight:650;line-height:1.3;color:#1a1a1a;padding:14px 0 11px;white-space:nowrap}
.creart-site .primary-menu a:after{bottom:5px;background:#e7e000;height:3px}
.creart-site.home .primary-menu li:first-child a:after{transform:scaleX(1)}
.creart-site .header-cta.btn{justify-self:end;border-radius:11px;padding:13px 22px;min-height:46px;font-size:13px;letter-spacing:-.02em;font-weight:700;background:#0b0b0b;box-shadow:0 5px 16px #0002;gap:13px}
.creart-site .header-cta.btn svg{width:15px}
.creart-site .nav-toggle{display:none}
/* Front page layout, max width and visual rhythm */
.creart-site.home .site-main{width:min(100% - 46px,1440px);margin:auto;background:#fff;box-shadow:0 14px 40px #00000012}
.creart-site .cm-site{width:100%;max-width:1440px;margin:auto;background:#fff;overflow:hidden}
.creart-site .cm-site *, .creart-site .cm-site *::before, .creart-site .cm-site *::after{box-sizing:border-box}
.cm-hero{height:690px;min-height:0;isolation:isolate;position:relative;overflow:hidden;background:linear-gradient(116deg,#fafafa 5%,#fff 64%,#e4e4e4 100%)}
.cm-hero-scene{position:absolute;inset:0;z-index:0;background:linear-gradient(127deg,#f9f9f8 0%,#fbfaf8 49%,#e6e7e8 100%)}
.cm-hero-scene::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#fff 0%,#fffe 22%,#ffffffba 42%,#fff0 62%)}
.cm-office-light{position:absolute;inset:0;z-index:0;pointer-events:none;background:repeating-linear-gradient(135deg,transparent 0,transparent 135px,#b5b1ab20 136px,#fff0 138px),linear-gradient(155deg,#fff6,#9991 63%,#fff 98%)}
.cm-scene-logo{position:absolute;width:39%;height:100%;right:-2%;top:0;display:flex;align-items:center;justify-content:center;opacity:.94;mix-blend-mode:multiply}
.cm-scene-brand-image{display:block;width:100%;height:92%;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 10px 10px #0001)}
.cm-scene-photo{position:absolute;left:34%;top:0;width:39%;height:100%;display:block;overflow:hidden;z-index:1;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 17%,#000 78%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 17%,#000 78%,transparent 100%)}
.cm-scene-photo::after{content:"";position:absolute;inset:65% 0 0;pointer-events:none;background:linear-gradient(180deg,#fff0,#fff)}
.cm-hero-photo{position:absolute;display:block;width:100%;height:128%;max-width:none;max-height:none;top:-2%;left:0;object-fit:cover;object-position:52% 24%;mix-blend-mode:multiply}
.cm-source-clean .cm-hero-photo{height:100%;top:0;object-position:center 38%}
.cm-source-clean::after{display:none}
.cm-scene-slogan{position:absolute;left:44%;top:11%;width:190px;z-index:2;filter:drop-shadow(0 2px 2px #fff)}
.cm-slogan-original{width:100%;height:auto;object-fit:contain;display:block}
.cm-hero-content{position:absolute;z-index:5;left:clamp(28px,4.4%,64px);top:49%;transform:translateY(-50%);width:50%;max-width:680px;pointer-events:none}
.cm-hero-content a{pointer-events:auto}
.cm-overline{font-size:13px;letter-spacing:.43em;font-weight:750;line-height:1.45;margin:0 0 9px;text-transform:uppercase;color:#191919}
.cm-hero h1{font-size:clamp(48px,5.1vw,76px)!important;font-weight:950;letter-spacing:-.075em;line-height:.86;text-wrap:initial!important;margin:0 0 15px;color:#020304;white-space:nowrap}
.cm-hero h1 span{display:block;white-space:nowrap}
.cm-hero .brand-bars{margin:0 0 18px}
.cm-hero-intro{font-size:18px!important;font-weight:400;line-height:1.5!important;color:#606065;max-width:410px;margin:0 0 25px!important}
.cm-actions{display:flex;flex-wrap:wrap;align-items:center;gap:13px}
.cm-button{appearance:none;display:inline-flex;justify-content:center;align-items:center;gap:15px;min-height:51px;padding:13px 24px;border:1px solid transparent;border-radius:9px;text-decoration:none;font-size:14px;font-weight:720;line-height:1.3;white-space:nowrap;transition:transform .2s ease,background-color .2s ease}
.cm-button:hover{transform:translateY(-2px)}
.cm-button svg{width:17px;height:17px}
.cm-button-black{background:#080808;color:#fff}
.cm-button-white{background:#fff;border-color:#999;color:#111}
/* Projects */
.cm-projects{padding:33px 36px 29px;background:#fff}
.cm-section-top{display:flex;justify-content:space-between;align-items:center;gap:26px;margin-bottom:17px}
.cm-section-top h2{font-size:13px!important;font-weight:650;letter-spacing:.47em;line-height:1.3!important;text-wrap:initial!important;margin:0}
.cm-section-top a{font-size:13px;font-weight:750;color:#0a0b0c;text-decoration:none;display:inline-flex;align-items:center;gap:15px;white-space:nowrap}
.cm-section-top svg{width:18px;height:18px}
.cm-project-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.cm-project{min-width:0}
.cm-project-image-link{display:block;width:100%;aspect-ratio:1.65;overflow:hidden;background:#f5f5f5;border-radius:8px;text-decoration:none}
.cm-project-image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.cm-project-image-logo{object-fit:cover;object-position:center center}
.cm-project-image-valla{object-fit:cover;object-position:center 34%}
.cm-project-image-link:hover .cm-project-image{transform:scale(1.035)}
.cm-project-caption{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:15px 16px 0}
.cm-project-copy{min-width:0}
.cm-project-num{display:block;font-size:12px;font-weight:750;line-height:1.3;margin-bottom:3px}
.cm-project h3{font-size:20px!important;line-height:1.17!important;font-weight:850;letter-spacing:-.045em;margin:0 0 4px;text-wrap:initial!important}
.cm-project h3 a{color:inherit;text-decoration:none}
.cm-project p{font-size:12px!important;letter-spacing:.19em;font-weight:560;line-height:1.45!important;color:#707176;margin:0!important}
.cm-round-arrow{display:inline-flex;width:52px;height:52px;border:1px solid #d5d5d5;border-radius:50%;align-items:center;justify-content:center;color:#070707;text-decoration:none;flex:none}
.cm-round-arrow svg{width:19px;height:19px}
.cm-round-arrow:hover{border-color:#111;background:#111;color:#fff}
/* 20 years */
.cm-anniversary{display:grid;grid-template-columns:35% 29% 36%;align-items:center;gap:0;min-height:318px;border-top:1px solid #eee;background:linear-gradient(115deg,#fff,#f9f9f9 55%,#fff);padding:35px 42px}
.cm-anniv-logo{align-self:stretch;display:flex;align-items:center;justify-content:center;padding:0 30px 0 0;border-right:1px solid #d6d6d6;min-width:0}
.cm-anniversary-logo{max-width:100%;width:100%;height:auto;max-height:242px;object-fit:contain;display:block}
.cm-anniv-copy{padding:0 28px 0 40px;min-width:0}
.cm-anniv-overline{font-size:14px;letter-spacing:.48em;font-weight:600;margin-bottom:10px;white-space:nowrap}
.cm-anniv-copy h2{font-size:clamp(33px,3.15vw,47px)!important;line-height:.98!important;letter-spacing:.035em;font-weight:850;margin:0 0 15px;white-space:nowrap;text-wrap:initial!important}
.cm-anniv-copy p{font-size:13px!important;line-height:1.55!important;color:#7a7a7a;max-width:310px;margin:13px 0 0!important}
.cm-stats{border-left:1px solid #d5d5d5;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:7px 0 7px 14px;min-height:90px;align-items:center}
.cm-stat{text-align:center;padding:10px 6px;border-right:1px solid #d7d7d7}
.cm-stat:last-child{border:0}
.cm-stat strong{display:block;font-size:clamp(19px,1.95vw,29px);line-height:1.1;font-weight:900;letter-spacing:-.055em;white-space:nowrap}
.cm-stat span{display:block;font-size:10px;letter-spacing:.03em;margin-top:10px;white-space:nowrap;color:#777}
/* CTA */
.cm-cta{position:relative;isolation:isolate;min-height:300px;display:flex;align-items:center;background:#080808;overflow:hidden;color:white}
.cm-cta-photo{position:absolute;inset:0;z-index:-2}
.cm-cta-image{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 42%;filter:grayscale(1) contrast(1.15)}
.cm-cta-overlay{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#050505d9 0%,#060606a3 34%,#0007 75%,#000d 100%)}
.cm-cta-copy{padding:28px 0 30px 62px;max-width:900px}
.cm-cta .cm-overline{font-size:12px;color:#fff;letter-spacing:.45em;margin-bottom:12px}
.cm-cta h2{font-size:clamp(37px,4.2vw,62px)!important;line-height:.9!important;letter-spacing:-.075em;font-weight:900;color:#fff;margin:0 0 8px;white-space:nowrap;text-wrap:initial!important}
.cm-cta-copy p:not(.cm-overline){font-size:15px!important;line-height:1.4!important;color:#e8e8e8;margin:0 0 17px!important;max-width:530px}
.cm-cta .cm-button{min-height:41px;padding:10px 21px;font-size:13px}
.cm-cta-side{margin-left:auto;padding:0 60px 0 18px;align-self:center}
.cm-cta-side .brand-bars{margin-bottom:14px}
.cm-cta-side span{display:block;font-size:10px;font-weight:650;letter-spacing:.39em;line-height:2.05;white-space:nowrap}
/* Footer — no fake phone or social links: populated options only */
.creart-site .reference-footer{width:min(100% - 46px,1440px);margin:0 auto 23px;background:#fff;border-radius:0 0 15px 15px;box-shadow:0 14px 40px #00000012}
.creart-site .footer-main-row{display:grid;grid-template-columns:minmax(145px,220px) minmax(250px,1fr) auto minmax(180px,265px);gap:28px;padding:22px 40px;align-items:center;border-bottom:1px solid #e9e9e9;border-top:0}
.creart-site .footer-brandmark{border-right:1px solid #e1e1e1;min-height:64px;display:flex;align-items:center}
.creart-site .footer-brandmark .brand-logo-img{max-width:156px;max-height:64px;width:auto}
.creart-site .footer-nav{grid-column:auto;order:initial}
.creart-site .footer-nav .footer-menu{display:flex;gap:clamp(10px,1.6vw,28px);flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0}
.creart-site .footer-nav .footer-menu li{margin:0}
.creart-site .footer-nav .footer-menu a{font-size:13px!important;line-height:1.35;font-weight:650;color:#111;text-decoration:none}
.creart-site .footer-socials{display:flex;gap:11px;align-items:center;border-right:1px solid #ddd;padding:0 26px 0 0;min-height:64px}
.creart-site .footer-socials a{border:0!important;background:none!important;width:28px;height:28px;padding:1px;color:#111}
.creart-site .footer-socials svg{width:22px;height:22px}
.creart-site .footer-contact-mini{display:flex;gap:6px;min-width:0;flex-direction:column}
.creart-site .footer-contact-mini a,.creart-site .footer-contact-mini span{font-size:12px;color:#434343;text-decoration:none;overflow-wrap:anywhere}
.creart-site .footer-bottom-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 40px 23px;color:#929292;font-size:11px;letter-spacing:.01em;border-top:0}
.creart-site .footer-bottom-row span:last-child{font-size:10px;letter-spacing:.31em;white-space:nowrap}
/* Extend same editorial system to genuine interior WP pages */
.creart-site:not(.home) .site-main{width:min(100% - 46px,1440px);margin:0 auto;background:#fff;box-shadow:0 14px 40px #00000012}
.creart-site:not(.home) .site-main .wrap{max-width:1280px}
.creart-site:not(.home) .interior-hero{background:linear-gradient(118deg,#fff,#f5f5f5)}
.creart-site:not(.home) .interior-heading h1,.creart-site:not(.home) .page-banner h1{font-size:clamp(47px,5.2vw,76px)!important;line-height:.95!important;font-weight:900;letter-spacing:-.07em}
.creart-site:not(.home) .interior-heading .kicker,.creart-site:not(.home) .section-heading .kicker{letter-spacing:.34em;color:#555}
.creart-site:not(.home) .interior-intro{font-size:clamp(18px,2vw,23px)!important;line-height:1.5}
.creart-site:not(.home) .interior-visual img{object-fit:contain}
.creart-site:not(.home) .interior-service-card,.creart-site:not(.home) .interior-project-card{border-radius:8px;overflow:hidden}
.creart-site:not(.home) .interior-service-text h2,.creart-site:not(.home) .interior-project-info h3{font-size:clamp(22px,2vw,29px)!important;line-height:1.16}
.creart-site:not(.home) .section-heading h2{font-size:clamp(32px,3.35vw,47px)!important}
/* Tablets */
@media(max-width:1190px){
.creart-site .site-header .header-inner{margin:0 24px;min-height:80px}
.creart-site .site-brand .brand-logo-img{max-width:151px}
.cm-hero{height:610px}
.cm-hero-content{left:30px;width:56%}
.cm-hero h1{font-size:clamp(46px,5.8vw,66px)!important}
.cm-scene-photo{left:37%;width:40%}
.cm-scene-logo{width:39%;right:-4%}
.cm-anniversary{padding:25px 24px;grid-template-columns:33% 33% 34%}
.cm-anniv-copy{padding:0 20px 0 22px}
.cm-anniv-copy h2{font-size:clamp(28px,3.3vw,43px)!important}
.cm-stats{grid-template-columns:repeat(2,1fr);padding-left:8px}
.cm-stat:nth-child(2){border-right:0}
.creart-site .footer-main-row{grid-template-columns:auto 1fr auto;gap:15px;padding:22px 24px}
.creart-site .footer-contact-mini{grid-column:1/-1;display:flex;flex-direction:row;gap:18px;border-top:1px solid #eee;padding-top:12px}
.creart-site .footer-socials{border:0;padding-right:0}
}
@media(max-width:980px){
.creart-site .site-header .header-inner{grid-template-columns:1fr auto;min-height:76px}
.creart-site .header-cta{display:none!important}
.creart-site .nav-toggle{display:flex!important;grid-column:2;grid-row:1;margin-left:auto;position:relative;z-index:4}
.creart-site .primary-nav{display:none;position:absolute;top:76px;left:0;right:0;z-index:40;background:#fff;box-shadow:0 14px 19px #0001;padding:15px 22px;margin:0}
.creart-site .primary-nav.is-open{display:block}
.creart-site .primary-menu{display:flex;flex-direction:column;align-items:stretch;gap:2px}
.creart-site .primary-menu li a{font-size:16px;display:block;padding:13px 5px}
.creart-site .primary-menu a:after{display:none}
.cm-hero{height:580px}
.cm-hero-content{width:60%}
.cm-hero h1{font-size:clamp(42px,5.8vw,58px)!important}
.cm-hero-intro{font-size:16px!important;max-width:350px}
.cm-scene-photo{left:39%;width:40%}
.cm-scene-logo{width:36%;right:-2%}
.cm-projects{padding:25px 22px}
.cm-project h3{font-size:18px!important}
.cm-project p{font-size:10px!important}
.cm-anniversary{grid-template-columns:35% 65%;row-gap:23px}
.cm-anniv-copy{padding-right:0}
.cm-anniv-copy h2{font-size:40px!important}
.cm-stats{grid-column:1/-1;grid-template-columns:repeat(4,1fr);border-top:1px solid #ddd;border-left:0}
.cm-stat:nth-child(2){border-right:1px solid #ddd}
.cm-cta-copy{padding-left:35px}
.cm-cta-side{padding-right:30px}
}
/* Mobile moves the brand composition below the headline without image stretching */
@media(max-width:700px){
.creart-site .site-header,.creart-site.home .site-main,.creart-site:not(.home) .site-main,.creart-site .reference-footer{width:100%;margin-left:auto;margin-right:auto;box-shadow:none;border-radius:0}
.creart-site .site-header{margin-top:0;border-bottom:1px solid #eee}
.creart-site .site-header .header-inner{margin:0 20px}
.cm-hero{height:auto;display:flex;flex-direction:column-reverse}
.cm-hero-content{position:relative;transform:none;top:auto;left:auto;width:100%;max-width:100%;padding:38px 20px 31px;background:linear-gradient(90deg,#fff,#fcfcfc)}
.cm-hero h1{font-size:clamp(48px,11.3vw,68px)!important;line-height:.9;white-space:normal}
.cm-hero-intro{max-width:100%;font-size:17px!important;margin-bottom:23px!important}
.cm-hero-scene{position:relative;height:370px;flex:none}
.cm-scene-photo{left:9%;width:63%}
.cm-scene-logo{width:45%;right:-5%}
.cm-hero-scene::before{background:linear-gradient(90deg,#fff9 0%,transparent 28%)}
.cm-scene-photo::after{background:linear-gradient(180deg,transparent 70%,#fff 100%)}
.cm-actions{gap:11px}
.cm-actions .cm-button{flex:1;padding:13px 8px;font-size:13px}
.cm-projects{padding:30px 20px 26px}
.cm-section-top{align-items:flex-start;flex-direction:column;gap:11px}
.cm-section-top h2{font-size:11px!important;letter-spacing:.32em}
.cm-project-grid{grid-template-columns:1fr;gap:26px}
.cm-project-image-link{aspect-ratio:1.6}
.cm-project h3{font-size:21px!important}
.cm-project p{font-size:11px!important}
.cm-anniversary{display:flex;flex-direction:column;align-items:stretch;gap:25px;padding:32px 20px}
.cm-anniv-logo{border-right:0;border-bottom:1px solid #ddd;padding:0 0 23px;max-height:270px}
.cm-anniversary-logo{max-height:210px;width:100%}
.cm-anniv-copy{padding:0}
.cm-anniv-copy h2{font-size:clamp(36px,9vw,48px)!important}
.cm-anniv-copy p{font-size:15px!important;max-width:100%}
.cm-stats{grid-column:auto;padding:14px 0 0}
.cm-stat strong{font-size:23px}
.cm-cta{min-height:340px}
.cm-cta-copy{padding:30px 20px 37px;position:relative;z-index:2}
.cm-cta h2{font-size:clamp(36px,9vw,55px)!important;white-space:normal}
.cm-cta-copy p:not(.cm-overline){font-size:15px!important}
.cm-cta-side{display:none}
.creart-site .footer-main-row{grid-template-columns:1fr 1fr;gap:19px;padding:25px 20px}
.creart-site .footer-brandmark{border-right:0}
.creart-site .footer-nav{grid-column:1/-1;order:3}
.creart-site .footer-socials{justify-self:end}
.creart-site .footer-contact-mini{grid-column:1/-1;display:flex;flex-direction:column;order:4}
.creart-site .footer-bottom-row{padding:15px 20px 25px;flex-direction:column;align-items:flex-start;gap:8px}
.creart-site .footer-bottom-row span:last-child{white-space:normal;line-height:1.8}
}
@media(max-width:400px){.cm-hero h1{font-size:12.1vw!important}.cm-actions{flex-direction:column}.cm-actions .cm-button{width:100%}.cm-hero-scene{height:300px}.cm-stat strong{font-size:21px}.cm-project-caption{padding-left:3px;padding-right:3px}.cm-section-top a{font-size:12px}}
@media(prefers-reduced-motion:reduce){.cm-button,.cm-project-image{transition:none}}
