/* Native Elementor controls own layout, type sizes, colors and spacing. */
:root{--sp-brown:#603821;--sp-ink:#31251f;--sp-muted:#74675e;--sp-cream:#f5f1e9;--sp-line:#d8cec2}
*{box-sizing:border-box}
body{margin:0;background:var(--sp-cream);color:var(--sp-ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
body.elementor-default{--sp-brown:var(--e-global-color-primary,#603821);--sp-ink:var(--e-global-color-secondary,#31251f);--sp-muted:var(--e-global-color-text,#74675e)}
html{scroll-behavior:smooth;scroll-padding-top:30px}
.sipolan-elementor-content{width:100%;margin:0;min-height:20vh}
.sipolan-elementor-content>.elementor{width:100%}
.skip-link{position:fixed;top:-100px;left:20px;z-index:9999;padding:14px 20px;background:#fff;color:#31251f}
.skip-link:focus{top:10px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--sp-brown);outline-offset:4px}
.sp-native-header{position:relative;z-index:30}
.sp-product-card[hidden]{display:none}
.sp-filter.is-active .elementor-button{box-shadow:inset 0 -2px 0 currentColor}
.sp-hover-image .elementor-widget-container{overflow:hidden}
.sp-hover-image img{transition:transform .8s cubic-bezier(.2,.7,.25,1)}
@media(hover:hover){.sp-hover-image:hover img{transform:scale(1.025)}}
.sp-float-image img{animation:sp-float 9s ease-in-out infinite;will-change:transform}
@keyframes sp-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.sp-motion-enabled .native-reveal{transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.25,1)}
.sp-motion-enabled .native-reveal:not(.sp-inview){opacity:0;transform:translateY(22px)}
.sp-motion-enabled .native-reveal.sp-inview{opacity:1;transform:translateY(0)}
/* The service form is the only server-rendered component. */
.sipolan-native-inquiry{width:100%;color:var(--sp-ink)}
.sipolan-native-form{margin:0;padding:30px;background:#fffefb;border:1px solid var(--sp-line)}
.sipolan-native-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.sipolan-native-form label{display:block;font:400 13px/1.5 Arial,Helvetica,sans-serif}
.sipolan-native-form .form-grid label>span{color:var(--sp-brown)}
.sipolan-native-form input:not([type=checkbox]):not([type=hidden]),.sipolan-native-form select,.sipolan-native-form textarea{display:block;width:100%;border:1px solid var(--sp-line);background:#fff;padding:13px 14px;margin-top:9px;color:var(--sp-ink);font:400 14px/1.5 Arial,Helvetica,sans-serif;border-radius:0;box-shadow:none}
.sipolan-native-form input:not([type=checkbox]):not([type=hidden]),.sipolan-native-form select{min-height:49px}
.sipolan-native-form textarea{min-height:140px;resize:vertical}
.sipolan-native-form .full-width{grid-column:1/-1}
.sipolan-native-form .honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.sipolan-native-form .privacy-check{display:flex;align-items:flex-start;gap:10px;margin:24px 0;font-size:12px;color:var(--sp-muted)}
.sipolan-native-form .privacy-check input{margin:3px 0 0;width:16px;height:16px;flex:0 0 16px;accent-color:var(--sp-brown)}
.sipolan-native-form a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.sipolan-native-form .button{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;min-height:54px;padding:16px 22px;background:var(--sp-brown);border:1px solid var(--sp-brown);color:#fff;font:500 14px/1.4 Arial,Helvetica,sans-serif;cursor:pointer}
.sipolan-native-form .button:hover{background:var(--sp-ink);border-color:var(--sp-ink)}
.sipolan-native-form .form-hint{font:400 12px/1.7 Arial,Helvetica,sans-serif;color:var(--sp-muted);margin:17px 0 0}
.sipolan-native-inquiry-privacy{font:400 12px/1.8 Arial,Helvetica,sans-serif;color:var(--sp-muted);margin-top:22px}
.sipolan-native-inquiry-privacy summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.sipolan-native-inquiry-privacy p{margin-top:12px}
.inquiry-notice{padding:18px;border:1px solid var(--sp-line);margin-bottom:20px;font-size:14px;line-height:1.7;background:#fffdf9}
.content-page,.site-main{width:min(960px,calc(100% - 44px));margin:70px auto;min-height:35vh}
@media(max-width:767px){.sipolan-native-form{padding:24px 19px}.sipolan-native-form .form-grid{grid-template-columns:1fr;gap:19px}.sipolan-native-form input:not([type=checkbox]):not([type=hidden]),.sipolan-native-form select,.sipolan-native-form textarea{font-size:16px}.sp-float-image img{animation:none}}
/* Respect system motion preferences and keep the editor's targets still. */
body.elementor-editor-active .sp-float-image img{animation:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sp-float-image img{animation:none}.native-reveal,.sp-hover-image img{transition:none!important;transform:none!important;opacity:1!important}}
