/* A shorter first visit, with room for the work and clear next steps. */
.page-home .hero h1{font-size:clamp(32px,3.1vw,43px);line-height:1.12;letter-spacing:-.045em}
.page-home .hero-copy>p{max-width:440px;font-size:15px;line-height:1.7;margin-top:16px}
.page-home .hero-copy{max-width:670px}
.page-home .hero-content{padding-top:29px}
.page-home .hero-actions{margin-top:20px}
.page-home .hero-budget-links{margin-top:13px}
.home-work{padding-block:52px 44px}
.home-projects{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.home-projects .project-info{padding:23px}
.home-projects .project-info h3{font-size:23px}
.home-projects .project-info>p{font-size:14px;line-height:1.7;min-height:0}
.home-projects .project-visual{padding:18px 18px 0}
.home-projects .browser-frame>img{aspect-ratio:1.7;object-fit:cover;object-position:top}
.home-projects .project-bottom{margin-top:20px;padding-top:15px}
.home-work-note{margin-top:24px;font-size:12px;max-width:740px}
.home-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.home-service{display:flex;flex-direction:column;align-items:flex-start;padding:28px;background:#fff;border:1px solid #dce9f4;border-radius:14px;transition:border-color .2s,transform .2s,box-shadow .2s}
.home-service:hover{border-color:#27cbed;transform:translateY(-4px);box-shadow:0 12px 36px #0937540c}
.home-service .icon-box{margin-bottom:22px;width:43px;height:43px}
.home-service-type{font-size:11px;color:#456786;font-weight:700;margin-bottom:11px}
.home-service h3{font-size:25px;line-height:1.25}
.home-service p{font-size:14px;line-height:1.8;margin-block:15px 23px}
.home-service>.text-link{margin-top:auto;font-size:12px}
.page-home .model-teaser{grid-template-columns:repeat(2,minmax(0,1fr))}
.page-home .model-teaser .model-picture img{aspect-ratio:1.85;object-fit:cover;object-position:top}
.page-home .model-info{padding:23px}
.page-home .model-info>p{font-size:14px;line-height:1.7}
.page-home .model-info h3{font-size:27px}
.home-about .about-preview-inner{grid-template-columns:240px 1fr;gap:60px;padding:35px 45px}
.home-about .about-brand-panel .brand{width:220px;height:220px}
.home-about .about-brand-panel .brand img{width:280px;height:280px;max-width:none;left:-30px;top:-30px}
.home-about p+p{margin-top:13px}
.home-about p{max-width:600px}
.contact-section{padding-top:42px}
.contact-form-wrap{scroll-margin-top:130px}
.form-required-note{font-size:12px;color:#62738b;margin-bottom:20px}
.contact-choice{padding:13px 16px;margin-bottom:22px;border-left:3px solid #16cbed;background:#edfaff;color:#174466;font-size:13px;overflow-wrap:anywhere;border-radius:0 7px 7px 0}
.contact-optional{margin-block:22px;border:1px solid #dce8f3;border-radius:9px;overflow:hidden}
.contact-optional summary{position:relative;display:flex;flex-wrap:wrap;column-gap:12px;align-items:center;padding:17px 40px 17px 17px;cursor:pointer;list-style:none;font-size:14px;font-weight:800;min-height:55px}
.contact-optional summary::-webkit-details-marker{display:none}
.contact-optional summary small{font-size:11px;font-weight:500;color:#62738b}
.contact-optional summary>span{position:absolute;right:18px;font-size:20px;font-weight:400;color:#126ca1}
.contact-optional[open] summary>span{transform:rotate(45deg)}
.optional-fields{padding:4px 17px 17px}
.optional-fields label{margin-top:17px}
.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-whatsapp-alternative{padding:13px 4px;background:none;border:0;color:#08608a;font-weight:800;font-size:13px;min-height:44px;margin-top:9px;text-decoration:underline;text-underline-offset:4px}
.form-submit:disabled{opacity:.7;cursor:wait}
.form-status{overflow-wrap:anywhere}
.form-status a{font-weight:800;text-decoration:underline}
.case-image-tools{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-top:18px}
.case-image-tools .case-caption{margin:0;max-width:820px}
.image-open{flex:none;border:1px solid #bfd9ed;border-radius:7px;background:#f2f9ff;color:#075780;padding:11px 16px;min-height:44px;font-size:12px;font-weight:800}
.image-dialog{max-width:min(1400px,96vw);width:96vw;max-height:92dvh;padding:0;border:1px solid #234d72;border-radius:14px;background:#061b32;color:#fff;box-shadow:0 24px 100px #0007}
.image-dialog::backdrop{background:#021020db;backdrop-filter:blur(6px)}
.image-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 20px}
.image-dialog-bar h2{font-size:18px;letter-spacing:-.02em}
.image-dialog-close{border:1px solid #4f7593;border-radius:6px;background:none;color:#fff;min-height:44px;padding:8px 14px;font-size:13px}
.image-dialog-scroll{max-height:calc(92dvh - 154px);overflow:auto;background:#edf3f8}
.image-dialog img{width:100%;height:auto}
.image-dialog .image-caption{padding:16px 20px;color:#c4d7e8;font-size:12px;line-height:1.65}
body.image-viewing{overflow:hidden}
@media(min-width:951px){.page-home .hero{height:442px}.page-home .hero h1 em{white-space:nowrap}}
@media(max-width:950px){.home-projects{gap:16px}.home-projects .project-info{padding:18px}.home-projects .project-info h3{font-size:20px}.home-service-grid{gap:16px}.home-service{padding:22px}.home-service h3{font-size:22px}.home-about .about-preview-inner{gap:26px;padding:30px;grid-template-columns:180px 1fr}.home-about .about-brand-panel .brand{width:180px;height:180px}.home-about .about-brand-panel .brand img{width:230px;height:230px;left:-25px;top:-25px}}
@media(max-width:700px){.home-projects,.home-service-grid{grid-template-columns:1fr}.home-projects .project-info{padding:22px}.home-projects .project-info h3{font-size:24px}.home-projects .project-info>p{font-size:14px}.home-projects .project-visual{padding:20px 20px 0}.home-projects .browser-frame>img{aspect-ratio:1.85}.home-service{padding:24px}.home-service .icon-box{margin-bottom:16px}.home-service h3{font-size:24px}.home-service p{margin-block:12px 17px}.home-about .about-preview-inner{grid-template-columns:1fr}.home-about .about-brand-panel{display:none}.home-about h2{font-size:30px}.page-home .model-teaser{grid-template-columns:1fr}.page-home .model-info{padding:22px}.page-home .lab-heading{gap:20px}.page-home .lab-heading p{font-size:14px}.page-home .lab-bottom{gap:15px}.page-home .lab-bottom p{font-size:12px}.home-work-note{line-height:1.8}.case-image-tools{flex-direction:column;gap:14px}}
@media(max-width:600px){.page-home .hero{height:478px}.page-home .hero h1{font-size:32px;line-height:1.12}.page-home .hero-content{padding-top:28px}.page-home .hero-copy>p{font-size:14px;line-height:1.65;max-width:360px;margin-top:16px}.page-home .hero-actions{margin-top:20px}.page-home .hero-budget-links{margin-top:15px}.home-work{padding-block:36px}.home-work .section-heading{margin-bottom:26px}.home-work .section-heading h2{font-size:29px}.home-about .about-preview-inner{padding:25px}.contact-section{padding-top:30px}.contact-optional summary{font-size:13px}.contact-optional summary small{width:100%;font-size:11px}.contact-form-wrap{scroll-margin-top:112px}.image-dialog-bar{padding:10px 14px}.image-dialog-bar h2{font-size:16px}.image-dialog .image-caption{padding:12px 14px}.image-dialog-scroll{max-height:calc(92dvh - 175px)}}
@media(max-width:360px){.page-home .hero h1{font-size:28px}.page-home .hero-copy>p{font-size:13px}.page-home .hero{height:478px}.page-home .hero-actions{gap:8px}}
@media(prefers-reduced-motion:reduce){.home-service:hover{transform:none}.home-service{transition:none}}
.motion-off .home-service:hover{transform:none}
