/* PC canvas scales with its containing viewport (1440px Figma reference). */
.has-design-casa { margin:0; background:#fff; }
.has-design-casa .header { transform:translateY(-110%); visibility:hidden; pointer-events:none; transition:transform .3s ease,visibility .3s; }
.has-design-casa.casa-scrolled .header { transform:translateY(0); visibility:visible; pointer-events:auto; }
.has-design-casa .design-casa { container-type:inline-size; width:100%; max-width:none; margin:0; padding:0; color:#3d3d3d; font-family:'Zen Kaku Gothic New',sans-serif; font-weight:500; line-height:1.5; overflow:hidden; }
.design-casa *, .design-casa *::before, .design-casa *::after { box-sizing:border-box; }
.design-casa p,.design-casa h1,.design-casa h2,.design-casa h3,.design-casa figure { margin:0; padding:0; }
.design-casa img { display:block; border:0; }
.design-casa button { appearance:none; border:0; padding:0; background:none; cursor:pointer; font:inherit; color:inherit; }
.design-casa button:focus-visible,.design-casa a:focus-visible { outline:2px solid #164773; outline-offset:4px; }
.design-casa .dc-top-gallery [data-casa-rail] { top:1.736111cqw; }
.design-casa .dc-features { margin-left:.972222cqw; }
.design-casa .dc-gallery { width:100%; align-items:center; translate:0; background:linear-gradient(#ebebe9,white 93.926%); }
.has-design-casa .floating-btns { display:none!important; }
.design-casa [data-casa-rail] { display:flex; justify-content:flex-start; width:max-content; left:0; translate:0; will-change:transform; }
.design-casa [data-casa-rail] > * { flex-shrink:0; }
.design-casa [data-casa-thumbs] button { position:relative; }
.design-casa [data-casa-thumbs] button[aria-pressed=true]::after { content:''; position:absolute; bottom:-.8cqw; left:0; width:100%; border-bottom:1px solid #3d3d3d; }
.design-casa [data-node-id='10378:19376'],.design-casa [data-node-id='10378:19403'],.design-casa [data-node-id='10378:19420'],.design-casa [data-node-id='10378:19421'] { display:none; }
.design-casa .dc-dots { display:flex; align-items:center; justify-content:center; gap:.486111cqw; width:100%; height:.555556cqw; margin-top:2.430556cqw; }
.design-casa .dc-dots button { width:.555556cqw; height:.555556cqw; border-radius:50%; background:#ebebe9; }
.design-casa .dc-dots button[aria-pressed=true] { background:#3d3d3d; }
.design-casa .dc-contact { background:#ebebe9; padding:6.736111cqw 0 6.805556cqw; height:auto; min-height:118.472222cqw; }
.design-casa .dc-contact-card { width:78.472222cqw; margin-left:10.486111cqw; background:#fff; padding:5.555556cqw 0; scroll-margin-top:100px; }
.design-casa .dc-contact-heading { position:relative; width:45.76344cqw; height:11.666789cqw; margin:auto; border-bottom:1px solid #c1c8cc; text-align:center; }
.design-casa .dc-contact-heading span { position:absolute; top:.6cqw; left:9cqw; rotate:-5deg; font:400 3.611111cqw/1.3 'Corinthia',cursive; letter-spacing:.180556cqw; }
.design-casa .dc-contact-heading h2 { padding-top:2.298611cqw; font:700 5cqw/1.3 'EB Garamond',serif; letter-spacing:.25cqw; }
.design-casa .dc-contact-heading p { width:15.972222cqw; margin:-.4cqw auto 0; font:400 .972222cqw/1.5 'Zen Old Mincho',serif; letter-spacing:.194444cqw; background:#3d3d3d; color:white; }
.design-casa .dc-contact-description { margin:4.236111cqw auto; width:56.944444cqw; text-align:center; font:400 1.111111cqw/1.6 'Zen Kaku Gothic New',sans-serif; letter-spacing:.111111cqw; color:#616161; }
.design-casa .dc-form { width:56.944444cqw; margin:auto; color:#616161; font:400 .972222cqw/2 'Zen Kaku Gothic New',sans-serif; }
.design-casa .dc-field { position:relative; display:block; margin-bottom:1.388889cqw; }
.design-casa .dc-field input,.design-casa .dc-field textarea { display:block; width:100%; height:3.888889cqw; border:2px solid #616161; border-radius:.347222cqw; padding:.8cqw 6cqw .8cqw 1.736111cqw; background:#fff; color:#3d3d3d; font:inherit; }
.design-casa .dc-field textarea { height:14.583333cqw; padding:1.25cqw 1.388889cqw; resize:vertical; }
.design-casa .dc-field input::placeholder,.design-casa .dc-field textarea::placeholder { color:#7b7b7b; opacity:1; }
.design-casa .dc-required { position:absolute; top:.694444cqw; right:1.041667cqw; width:3.472222cqw; height:2.5cqw; display:grid; place-items:center; border-radius:.347222cqw; background:#da0000; color:#fff; pointer-events:none; }
.design-casa .dc-privacy { margin-top:4.236111cqw; text-align:center; font-size:1.111111cqw; line-height:1.6; letter-spacing:.111111cqw; }
.design-casa .dc-privacy a { color:inherit; text-decoration:underline; }
.design-casa .dc-submit { position:relative; text-align:center; margin:2.083333cqw auto 0; width:17.433681cqw; }
.design-casa .dc-submit::after { content:''; position:absolute; top:1.3cqw; right:1.1cqw; border-top:.27cqw solid transparent; border-bottom:.27cqw solid transparent; border-left:.4cqw solid #fff; pointer-events:none; }
.design-casa input.wpcf7-submit { width:100%; height:3.055556cqw; padding:0; border:0; border-radius:0; background:#3d3d3d; color:white; font:500 .972222cqw/2 'Zen Kaku Gothic New',sans-serif; letter-spacing:.097222cqw; cursor:pointer; }
.design-casa .wpcf7-spinner { position:absolute; }
.design-casa .dc-sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.design-casa .wpcf7-not-valid-tip { font-size:1cqw; }
@media (prefers-reduced-motion:reduce) { .has-design-casa .header { transition:none; } }
/* Small screens receive a usable fallback; the supplied design is the PC version. */
@media(max-width:767px) { .design-casa .dc-form,.design-casa .dc-contact-description { width:90%; font-size:12px; } .design-casa .dc-field input { min-height:44px; font-size:12px; padding:10px 60px 10px 12px; } .design-casa .dc-field textarea { min-height:140px; font-size:12px; } .design-casa .dc-required { top:8px; right:8px; width:40px; height:28px; font-size:12px; } .design-casa .dc-privacy { font-size:12px; } .design-casa .dc-submit { width:200px; } .design-casa input.wpcf7-submit { height:44px; font-size:13px; } }
