/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}}:root{--ink:#121820;--muted:#606a73;--line:#ddd8cd;--paper:#f7f5ef;--white:#fff;--navy:#10243a;--deep:#08131f;--green:#1f6b52;--red:#a43a36;--gold:#b78642;--soft-gold:#ead7ad;--shadow:0 18px 44px #1218201a;--font-ja:"Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", Meiryo, -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--ink);background:var(--paper);font-family:var(--font-ja);letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.76}button,input,textarea,select{font:inherit}img{object-fit:cover;width:100%;height:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3,p,dl,dd{margin-top:0}h1,h2,h3{letter-spacing:0;line-height:1.36}h1{max-width:900px;margin-bottom:12px;font-size:clamp(21px,1.48vw,25px);font-weight:700}h2{margin-bottom:0;font-size:clamp(18px,1.12vw,21px);font-weight:670;line-height:1.45}h3{margin-bottom:10px;font-size:17px;font-weight:680}figure{margin:0}figcaption{color:var(--muted);margin-top:10px;font-size:12px}.wrap{width:min(1120px,100% - 40px);margin:0 auto}.site-header{z-index:50;min-height:72px;color:var(--ink);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border-bottom:1px solid #12182014;justify-content:space-between;align-items:center;padding:0 34px;display:flex;position:sticky;top:0}.brand{white-space:nowrap;align-items:center;gap:12px;font-size:16px;font-weight:700;display:inline-flex}.brand-logo{object-fit:contain;flex:none;width:52px;height:28px}.nav{color:#121820b8;white-space:nowrap;align-items:center;gap:0;font-size:13px;display:flex}.nav a{text-align:center;border-left:1px solid #12182014;gap:2px;min-width:86px;padding:13px 10px 11px;transition:color .18s;display:grid}.nav a:last-child{border-right:1px solid #12182014}.nav-label,.nav-sub{line-height:1.35;display:block}.nav-label{font-weight:680}.nav-sub{color:#12182075;font-size:10px;font-weight:600}:is(.nav a:hover,.nav a:focus-visible){color:var(--green)}.nav a.active{color:var(--green);font-weight:700}.nav a.active .nav-sub{color:#1f6b52ad}.hero{min-height:clamp(330px,42svh,400px);color:var(--ink);background:var(--paper);align-items:center;display:grid;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0}.hero-bg img{object-position:center 44%}.hero-bg:after{content:"";background:linear-gradient(90deg,#f9f7f2f5,#f9f7f2bf 43%,#f9f7f21a),linear-gradient(#ffffff14,#f7f5efc2);position:absolute;inset:0}.hero-inner{z-index:1;width:min(1120px,100% - 40px);margin:0 auto;padding:34px 0 38px;position:relative}.eyebrow,.section-kicker{color:var(--gold);letter-spacing:0;margin-bottom:12px;font-size:13px;font-weight:700}.hero .eyebrow{color:var(--green)}.hero-tagline{max-width:520px;color:var(--navy);margin-bottom:16px;font-size:clamp(18px,1.2vw,21px);font-weight:660;line-height:1.62}.hero-tagline span{display:inline-block}.hero-copy{color:#121820c2;max-width:560px;margin-bottom:18px;font-size:13.5px;line-height:1.9}.hero-services{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.hero-services span{color:#121820b8;background:#ffffffb8;border:1px solid #10243a1f;border-radius:999px;align-items:center;min-height:32px;padding:0 10px;font-size:11.5px;font-weight:680;display:inline-flex}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.button,.tel-link{border-radius:6px;justify-content:center;align-items:center;min-height:42px;padding:0 17px;font-weight:700;transition:transform .18s,background-color .18s,color .18s;display:inline-flex}:is(.button:hover,.button:focus-visible,.tel-link:hover,.tel-link:focus-visible){transform:translateY(-1px)}.button.primary{color:var(--white);background:var(--green)}.button.secondary{color:var(--ink);background:#ffffffb3;border:1px solid #1218202e}.intro,.section{padding:44px 0;scroll-margin-top:88px}.intro,.section,.recruit-cta,.page-links,.footer{content-visibility:auto;contain-intrinsic-size:1px 720px}.intro{background:var(--white)}.page-hero{background:linear-gradient(135deg,#fff 0%,#f5f2ea 100%);padding:42px 0 38px}.page-hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:40px;display:grid}.page-hero h1{color:var(--navy);text-wrap:balance;word-break:keep-all;overflow-wrap:anywhere;margin-bottom:14px;font-size:clamp(21px,1.42vw,24px);font-weight:700;line-height:1.42}.page-lead{max-width:680px;color:var(--muted);margin-bottom:0;font-size:13.5px;line-height:1.86}.page-hero-image{background:var(--white);box-shadow:var(--shadow);border:1px solid #1218201a;border-radius:8px;overflow:hidden}.page-hero-image img{aspect-ratio:16/9;height:auto}.news-strip{background:linear-gradient(90deg,#fff,#fbfaf6);border:1px solid #1218201a;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:32px;padding:15px 18px;display:grid;box-shadow:0 12px 30px #1218200f}.news-strip span{color:var(--green);font-size:12px;font-weight:700}.news-strip strong{min-width:0;color:var(--navy);flex-wrap:wrap;gap:0 .55em;font-size:14px;line-height:1.58;display:flex}.nowrap{white-space:nowrap}.news-strip a{min-height:34px;color:var(--green);background:#1f6b520d;border:1px solid #1f6b5233;border-radius:6px;justify-content:center;align-items:center;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.section-head{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:start;gap:34px;margin-bottom:28px;display:grid}.section-head h2{max-width:390px;font-size:clamp(18px,1.08vw,21px);font-weight:670;line-height:1.58}.lead{color:var(--muted);margin-bottom:0;font-size:13.5px;line-height:1.86}.business-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.business-card{min-height:0;color:var(--ink);background:var(--white);border:1px solid #1218201a;border-radius:8px;padding:0 0 20px;display:block;overflow:hidden;box-shadow:0 16px 36px #12182014}.business-card:before{content:none}.business-card img{aspect-ratio:3/2;height:auto;transition:transform .4s;position:static}:is(.business-card:hover img,.business-card:focus-visible img){transform:scale(1.04)}.business-card span{color:var(--green);margin:16px 20px 7px;font-size:11px;font-weight:700;display:block}.business-card h3{color:var(--navy);margin:0 20px 9px;font-size:16px;line-height:1.45}.business-card p{color:var(--muted);margin-bottom:0;margin-left:20px;margin-right:20px;font-size:13.5px;line-height:1.82}.home-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px;display:grid}.home-link-card{background:linear-gradient(135deg,#fff 0%,#f9f6ef 100%);border:1px solid #1218201a;border-radius:8px;min-height:134px;padding:19px;transition:transform .18s,border-color .18s,box-shadow .18s;display:block;box-shadow:0 12px 30px #1218200f}:is(.home-link-card:hover,.home-link-card:focus-visible){border-color:#1f6b5247;transform:translateY(-2px);box-shadow:0 18px 38px #1218201a}.home-link-card span{color:var(--gold);margin-bottom:12px;font-size:12px;font-weight:700;display:block}.home-link-card h3{color:var(--navy);font-size:16px}.home-link-card p{color:var(--muted);margin-bottom:0;font-size:13.5px}.proof-strip{border:1px solid var(--line);background:var(--line);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:28px;display:grid;overflow:hidden}.proof-strip div{background:#ffffffb3;flex-direction:column;justify-content:center;min-height:96px;padding:22px;display:flex}.proof-strip strong{color:var(--navy);font-size:15px;line-height:1.4}.proof-strip span{color:var(--muted);margin-top:6px;font-size:13px}.light{background:var(--white)}.section:not(.light):not(.company){background:var(--paper)}.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:42px;display:grid}.copy-block{max-width:600px}.copy-block .lead{margin-top:22px}.feature-photo{background:var(--white);box-shadow:var(--shadow);border:1px solid #1218201a;border-radius:8px;overflow:hidden}.feature-photo img{aspect-ratio:16/10;height:auto}.construction-hero-photo img{aspect-ratio:16/11;height:auto}.feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:28px;display:grid}.feature{background:#ffffffc7;border:1px solid #1218201a;border-radius:8px;min-height:198px;padding:20px;box-shadow:0 10px 24px #1218200d}.feature h3{color:var(--navy);font-size:16px}.feature p{color:var(--muted);margin-bottom:0;font-size:13px}.work-gallery,.mie-gallery{grid-template-columns:1.25fr .85fr .85fr;gap:18px;margin-top:36px;display:grid}.mie-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.work-gallery figure,.mie-gallery figure{background:var(--white);border:1px solid #1218201a;border-radius:8px;overflow:hidden;box-shadow:0 14px 34px #12182014}.work-gallery figcaption,.mie-gallery figcaption,.feature-photo figcaption{margin-top:0;padding:12px 14px 14px}.work-gallery img,.mie-gallery img{aspect-ratio:4/3;height:auto}.mie-support-note{background:#fffc;border:1px solid #1218201a;border-radius:8px;margin-top:24px;padding:24px}.mie-support-note h3{color:var(--navy);margin-bottom:10px;font-size:17px}.mie-support-note p:last-child{color:var(--muted);margin-bottom:0;font-size:13.5px}.work-gallery .wide-photo img{aspect-ratio:16/10;height:auto}.trade-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.trade-item{background:var(--white);border:1px solid #1218201a;border-radius:8px;grid-template-rows:auto 1fr;display:grid;overflow:hidden;box-shadow:0 14px 34px #12182014}.trade-image img{aspect-ratio:4/3;height:auto}.trade-item div:last-child{padding:22px}.trade-item h3{color:var(--navy);font-size:16px}.trade-item p,.trade-band p,.contact-panel p{color:var(--muted);margin-bottom:0;font-size:13.5px}.trade-band{color:var(--ink);background:var(--white);border:1px solid #1218201a;border-radius:8px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:30px;margin-top:34px;padding:24px;display:grid;box-shadow:0 16px 36px #12182014}.trade-band img{aspect-ratio:16/10;border-radius:6px;height:auto}.trade-band h3{font-size:17px}.trade-band p{color:var(--muted)}.restaurant-split{grid-template-columns:minmax(0,1fr) minmax(320px,1fr)}.restaurant-photo img{aspect-ratio:16/9;object-position:center center;height:auto}.restaurant-photo-bright img{filter:brightness(1.03)contrast(1.02)}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:26px;display:grid}.info-grid div{border:1px solid var(--line);background:#ffffffb8;border-radius:8px;padding:18px}.info-grid dt{color:var(--green);margin-bottom:4px;font-size:13px;font-weight:700}.info-grid dd{color:var(--ink);word-break:keep-all;margin-bottom:0;font-size:15px;font-weight:700;line-height:1.55}.recruit{background:linear-gradient(180deg, #ffffff94, #f7f5eff0), var(--paper)}.recruit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.recruit-card{background:#ffffffd1;border:1px solid #1218201a;border-radius:8px;min-height:204px;padding:24px;box-shadow:0 14px 32px #12182012}.recruit-card h3{color:var(--navy);font-size:16px}.recruit-card p{color:var(--muted);margin-bottom:0;font-size:13px}.message-panel{background:var(--white);border:1px solid #1218201a;border-radius:8px;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:start;gap:30px;margin-top:30px;padding:28px;display:grid;box-shadow:0 16px 36px #12182014}.message-copy h3{color:var(--navy);margin-bottom:12px;font-size:16px}.message-copy p{color:var(--muted);margin-bottom:0;font-size:13px}.message-copy .mail-link{margin-top:14px}.message-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.message-form label{color:var(--green);gap:6px;font-size:13px;font-weight:700;display:grid}.message-form .full{grid-column:1/-1}.message-form input,.message-form select,.message-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fbfaf6;border-radius:6px;outline:none;padding:12px 13px;line-height:1.5;transition:border-color .16s,box-shadow .16s}.message-form select{min-height:48px}.message-form textarea{resize:vertical;min-height:130px}.message-form input:focus,.message-form select:focus,.message-form textarea:focus{border-color:#1f6b5280;box-shadow:0 0 0 3px #1f6b521a}.message-form button{min-height:48px;color:var(--white);background:var(--green);cursor:pointer;border:0;border-radius:6px;grid-column:1/-1;font-weight:700;transition:transform .18s,background-color .18s}.message-form button:disabled{cursor:progress;opacity:.78;transform:none}:is(.message-form button:hover,.message-form button:focus-visible){background:#18563f;transform:translateY(-1px)}.form-honey{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.form-status{background:#1f6b520f;border:1px solid #1f6b5233;border-radius:6px;grid-column:1/-1;gap:10px;padding:14px;display:grid}.form-status.error{background:#9e362d0f;border-color:#9e362d38}.form-status p{color:var(--green);margin-bottom:0;font-size:12.5px;font-weight:700}.form-status.error p{color:#9e362d}.company{color:var(--ink);background:var(--white)}.company .section-kicker,.company .lead{color:var(--muted)}.company-table{border:1px solid var(--line);background:var(--line);border-radius:8px;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.company-table div{background:#f7f5efc7;min-height:128px;padding:20px}.company-table dt{color:var(--green);margin-bottom:10px;font-size:13px;font-weight:700}.company-table dd{color:var(--ink);overflow-wrap:anywhere;margin-bottom:0;font-size:15px}.contact-panel{background:var(--paper);border:1px solid #1218201a;border-radius:8px;justify-content:space-between;align-items:center;gap:22px;margin-top:30px;padding:28px;display:flex}.contact-panel h3{margin-bottom:8px;font-size:16px}.contact-actions{gap:10px;min-width:220px;display:grid}.recruit-cta{background:#f1eee6;padding:50px 0}.recruit-cta-inner{background:var(--white);border:1px solid #1218201a;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;padding:30px;display:grid;box-shadow:0 14px 34px #12182014}.recruit-cta h2{max-width:680px;color:var(--navy);margin-bottom:14px;font-size:clamp(18px,1.28vw,21px)}.recruit-cta p{max-width:760px;color:var(--muted);margin-bottom:0}.recruit-cta-actions{gap:12px;min-width:260px;display:grid}.mail-link{min-height:44px;color:var(--green);overflow-wrap:anywhere;background:#ffffffb8;border:1px solid #1218201f;border-radius:6px;justify-content:center;align-items:center;padding:0 18px;font-weight:700;transition:transform .18s,border-color .18s;display:inline-flex}:is(.mail-link:hover,.mail-link:focus-visible){border-color:#1f6b5247;transform:translateY(-1px)}.page-links{background:var(--white);padding:34px 0}.page-links-inner{flex-wrap:wrap;gap:10px;display:flex}.page-links a{color:#121820bd;background:#f7f5efc2;border:1px solid #1218201f;border-radius:999px;align-items:center;min-height:40px;padding:0 14px;font-size:13px;font-weight:680;transition:color .18s,border-color .18s,background-color .18s;display:inline-flex}:is(.page-links a:hover,.page-links a:focus-visible){color:var(--green);background:#1f6b520f;border-color:#1f6b5247}.tel-link,.fax-line{border-radius:6px;justify-content:space-between;align-items:center;gap:18px;min-height:44px;padding:0 18px;font-weight:700;display:inline-flex}.tel-link{color:#21180e;background:var(--soft-gold);min-width:190px}.fax-line{color:var(--ink);background:#ffffffb8;border:1px solid #1218201f}.tel-link span,.fax-line span{color:var(--green);font-size:12px;font-weight:700}.footer{color:var(--muted);background:var(--white);border-top:1px solid #12182014;padding:34px 0;font-size:13px}.footer-inner{justify-content:space-between;gap:20px;display:flex}img[data-lightbox-src]{cursor:zoom-in}.image-lightbox{z-index:1000;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.image-lightbox-backdrop{cursor:zoom-out;background:#0a1018bd;border:0;position:absolute;inset:0}.image-lightbox-frame{z-index:1;gap:12px;width:min(1120px,94vw);max-height:92vh;margin:0;display:grid;position:relative}.image-lightbox-frame img{object-fit:contain;background:var(--white);border-radius:8px;width:100%;height:auto;max-height:82vh;box-shadow:0 28px 80px #00000059}.image-lightbox-frame figcaption{color:var(--white);text-align:center;margin:0;font-size:13px}.image-lightbox-close{z-index:2;background:var(--white);width:42px;height:42px;color:var(--navy);cursor:pointer;border:0;border-radius:999px;font-size:26px;line-height:1;position:absolute;top:-18px;right:-18px;box-shadow:0 12px 34px #00000040}@media (max-width:1050px){h1{font-size:23px}h2{font-size:19px}.site-header{padding:0 24px}.nav a{min-width:auto;padding-left:8px;padding-right:8px}.feature-grid,.recruit-grid,.company-table{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.site-header{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 18px 13px;position:static}.brand{gap:10px;font-size:15px}.brand-logo{width:46px;height:25px}.nav{flex-wrap:wrap;gap:6px 12px;width:100%;font-size:12px;line-height:1.5;overflow:visible}.nav a{text-align:left;border:0;min-width:0;padding:0;display:inline-flex}.nav a:last-child{border-right:0}.nav-sub{display:none}.hero{align-items:start;min-height:auto}.hero-bg:after{background:linear-gradient(#f7f5efa8,#f7f5effa),linear-gradient(90deg,#f7f5eff5,#f7f5ef57)}.hero-inner{padding:32px 0 34px}h1{font-size:22px}h2,.section-head h2{font-size:18px}.hero-copy{font-size:13px;line-height:1.82}.hero-tagline{max-width:480px;margin-bottom:14px;font-size:17px;line-height:1.58}.hero-services{gap:8px;margin-bottom:18px}.hero-services span{min-height:30px;padding:0 10px;font-size:11px}.intro,.section{padding:36px 0}.page-hero{padding:36px 0 34px}.page-hero h1{font-size:21px}.page-lead,.lead{font-size:13.5px;line-height:1.78}.section-head,.page-hero-grid,.news-strip,.split,.restaurant-split,.trade-band,.message-panel,.message-form,.recruit-cta-inner{grid-template-columns:1fr;gap:28px}.business-grid,.home-link-grid,.proof-strip,.trade-grid,.recruit-grid,.work-gallery,.mie-gallery{grid-template-columns:1fr}.business-card{min-height:0}.news-strip{gap:10px;margin-bottom:32px}.feature-photo img,.restaurant-photo img{aspect-ratio:16/10}.feature-grid,.info-grid,.company-table{grid-template-columns:1fr}.company-table div{min-height:auto}.contact-panel{flex-direction:column;align-items:stretch}.recruit-cta{padding:46px 0}.recruit-cta-inner{padding:26px}.recruit-cta-actions{min-width:0}.tel-link,.mail-link,.recruit-cta .button{width:100%}.footer-inner{flex-direction:column}.image-lightbox{padding:16px}.image-lightbox-frame{width:96vw}.image-lightbox-close{top:-12px;right:-8px}}@media (max-width:440px){.wrap,.hero-inner,.page-hero-grid{width:min(100% - 28px,1120px)}.brand{font-size:15px}.hero{min-height:auto}h1{font-size:21px}h2{font-size:18px}.hero-tagline{font-size:17px}.button{width:100%}}.mobility-motion{overflow-x:clip}html:has(.mobility-motion){overflow-x:clip}.business-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.business-card-media{aspect-ratio:3/2;overflow:hidden}.business-card-media img{width:100%;height:100%}.business-card-media-mobility{isolation:isolate;background:#f7f7f7;position:relative}.business-card-media-mobility img{aspect-ratio:auto;object-fit:contain;width:auto;max-width:100%;height:calc(100% - 20px);margin:auto;position:absolute;inset:10px}:is(.business-card-mobility:hover img,.business-card-mobility:focus-visible img){transform:scale(1.025)}.proof-news-link{flex-direction:column;justify-content:center;min-height:52px;display:flex}.proof-news-link strong{transition:color .18s}:is(.proof-news-link:hover strong,.proof-news-link:focus-visible strong){color:var(--green)}.mobility-wheel-image,.mobility-feature-photo{background:#f7f7f7}.mobility-wheel-image{aspect-ratio:16/9;isolation:isolate;min-height:0;position:relative;overflow:hidden}.mobility-wheel-image img{aspect-ratio:auto;object-fit:contain;width:auto;max-width:100%;height:calc(100% - 20px);max-height:100%;margin:auto;position:absolute;inset:10px}.mobility-service-grid,.mobility-package-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.mobility-service{min-height:238px;color:var(--white);background-color:var(--navy);background-position:50%;background-size:cover;border:1px solid #ffffff20;border-radius:8px;flex-direction:column;justify-content:flex-end;padding:22px;transition:transform .28s,box-shadow .28s,background-size .45s;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 34px #1218201f}.mobility-service:hover{transform:translateY(-4px);box-shadow:0 22px 42px #12182038}.mobility-service span,.mobility-package span{color:var(--gold);letter-spacing:.04em;margin-bottom:18px;font-size:11px;font-weight:700;display:block}.mobility-service span{color:#f1ce8f;text-shadow:0 1px 8px #0009;margin-bottom:11px}.mobility-service h3,.mobility-package h3{color:var(--navy);font-size:16px}.mobility-service h3{color:var(--white);text-shadow:0 2px 12px #000c;font-size:17px}.mobility-service p,.mobility-package p{color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.8}.mobility-service p{color:#ffffffe0;text-shadow:0 2px 12px #000d}.mobility-tesla{background:var(--paper)}.mobility-list{border-top:1px solid var(--line);margin-top:22px;padding:0}.mobility-list li{color:var(--ink);border-bottom:1px solid var(--line);padding:11px 0;font-size:13px;font-weight:680}.mobility-feature-media{aspect-ratio:16/10;contain:layout paint;isolation:isolate;background:#f7f7f7;min-height:0;position:relative;overflow:hidden}.mobility-feature-media img{z-index:0;aspect-ratio:auto;object-fit:contain;border-radius:50%;width:auto;max-width:100%;height:calc(100% - 20px);max-height:100%;margin:auto;position:absolute;inset:10px}.mobility-wheel-video{z-index:1;pointer-events:none;object-fit:contain;background:#f7f7f7;width:calc(100% - 12px);height:calc(100% - 12px);margin:auto;position:absolute;inset:6px}.mobility-package-grid{gap:18px}.mobility-package{background:linear-gradient(135deg,#fff 0%,#faf8f2 100%);border:1px solid #1218201a;border-radius:8px;min-height:240px;padding:22px;position:relative;box-shadow:0 12px 28px #1218200d}.mobility-package p{padding-bottom:42px}.mobility-package a{color:var(--green);border-bottom:1px solid #1f6b5252;padding-bottom:3px;font-size:12px;font-weight:700;position:absolute;bottom:22px;left:22px}.mobility-legal-note{color:var(--muted);background:var(--paper);border:1px solid var(--line);border-radius:6px;margin:20px 0 0;padding:13px 15px;font-size:11.5px;line-height:1.7}@media (max-width:1050px){.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.business-grid,.mobility-service-grid,.mobility-package-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:no-preference){.home-motion .hero,.mobility-motion .mobility-page-hero{isolation:isolate;overflow:hidden}.home-motion .hero:before,.mobility-motion .mobility-page-hero:before{z-index:1;content:"";pointer-events:none;filter:blur(3px);background:linear-gradient(90deg,#0000,#ffffffa8 48%,#b7864230 54%,#0000);width:26%;animation:1.55s cubic-bezier(.22,1,.36,1) .12s both hippo-hero-sweep;position:absolute;top:0;bottom:0;left:-32%;transform:skew(-12deg)}.home-motion .hero-inner,.mobility-motion .mobility-page-hero .page-hero-grid{z-index:2;position:relative}.home-motion .hero-bg{animation:1.65s cubic-bezier(.22,1,.36,1) both hippo-hero-image}.home-motion .hero-inner>*{opacity:0;animation:.86s cubic-bezier(.22,1,.36,1) forwards hippo-home-copy}.home-motion .hero-inner>:first-child{animation-delay:.12s}.home-motion .hero-inner>:nth-child(2){animation-delay:.23s}.home-motion .hero-inner>:nth-child(3){animation-delay:.34s}.home-motion .hero-inner>:nth-child(4){animation-delay:.45s}.home-motion .hero-inner>:nth-child(5){animation-delay:.56s}.home-motion .hero-inner>:nth-child(6){animation-delay:.67s}.mobility-motion .mobility-page-hero .page-hero-grid>div{opacity:0;animation:1s cubic-bezier(.22,1,.36,1) .1s forwards mobility-copy-in}.mobility-motion .mobility-wheel-image{opacity:0;animation:1.2s cubic-bezier(.22,1,.36,1) .16s forwards mobility-hero-visual}.mobility-motion .mobility-wheel-image img{animation:2.75s cubic-bezier(.18,.76,.2,1) .22s backwards mobility-wheel-turn-in}.mobility-motion .mobility-page-hero .section-kicker:after{vertical-align:middle;content:"";background:linear-gradient(90deg, var(--gold), transparent);transform-origin:0;width:82px;height:1px;margin-left:14px;animation:.95s cubic-bezier(.22,1,.36,1) .82s both mobility-accent-grow;display:inline-block}[data-reveal].reveal-ready{opacity:0;transition:opacity .82s,transform 1s cubic-bezier(.22,1,.36,1);transform:translateY(42px)scale(.96)}[data-reveal=scale].reveal-ready{transform:translateY(30px)scale(.92)}[data-reveal].reveal-ready.is-visible{opacity:1;transform:none}[data-reveal-delay="1"].reveal-ready{transition-delay:80ms}[data-reveal-delay="2"].reveal-ready{transition-delay:.2s}[data-reveal-delay="3"].reveal-ready{transition-delay:.32s}[data-reveal-delay="4"].reveal-ready{transition-delay:.44s}.business-card-mobility.reveal-ready.is-visible .business-card-media-mobility img{animation:1.9s cubic-bezier(.18,.76,.2,1) .24s backwards mobility-card-wheel-in}}@keyframes hippo-hero-image{0%{opacity:.5;transform:scale(1.085)}to{opacity:1;transform:scale(1)}}@keyframes hippo-home-copy{0%{opacity:0;transform:translate(-34px)translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes mobility-hero-visual{0%{opacity:0;transform:translate(58px)scale(.86)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes mobility-copy-in{0%{opacity:0;transform:translate(-54px)}to{opacity:1;transform:translate(0)}}@keyframes mobility-wheel-turn-in{0%{filter:brightness(1.18);transform:rotate(-1080deg)scale(.76)}to{filter:brightness();transform:rotate(0)scale(1)}}@keyframes mobility-card-wheel-in{0%{transform:rotate(-720deg)scale(.78)}to{transform:rotate(0)scale(1)}}@keyframes mobility-accent-grow{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes hippo-hero-sweep{0%{opacity:0;transform:translate(0)skew(-12deg)}25%{opacity:1}to{opacity:0;transform:translate(560%)skew(-12deg)}}@media (prefers-reduced-motion:reduce){.mobility-wheel-video{display:none}[data-reveal]{opacity:1!important;transition:none!important;animation:none!important;transform:none!important}}@media (max-width:820px){.nav{grid-template-columns:repeat(4,max-content);justify-content:start;align-items:center;gap:7px 13px;display:grid}.nav a{display:block}}@media (max-width:440px){.nav{gap:7px 11px;font-size:11.5px}}.job-list-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.job-card{background:var(--white);border:1px solid #1218201a;border-radius:8px;flex-direction:column;align-items:flex-start;padding:24px;display:flex;box-shadow:0 14px 32px #12182012}.job-card-top{width:100%;color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;font-size:12px;font-weight:700;display:flex}.job-badge{color:var(--green);background:#1f6b520d;border:1px solid #1f6b5233;border-radius:999px;padding:4px 10px}.job-card-type{color:var(--gold);margin-bottom:7px;font-size:12px;font-weight:700}.job-card h3{color:var(--navy);margin-bottom:8px;font-size:17px}.job-salary{color:var(--ink);margin-bottom:13px;font-size:18px}.job-card>p:last-of-type{color:var(--muted);margin-bottom:20px;font-size:13px}.job-card>a{color:var(--green);border-bottom:1px solid #1f6b5266;margin-top:auto;font-size:13px;font-weight:700}.recruit-partner-note{background:#ffffff8f;border:1px solid #1218201a;border-radius:8px;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);align-items:center;gap:30px;margin-top:30px;padding:24px;display:grid}.recruit-partner-note h2{color:var(--navy)}.recruit-partner-note p:last-child{color:var(--muted);margin-bottom:0;font-size:13px}.job-page-hero{padding-bottom:42px}.breadcrumb{color:var(--muted);flex-wrap:wrap;gap:8px;margin-bottom:28px;font-size:12px;display:flex}:is(.breadcrumb a:hover,.breadcrumb a:focus-visible){color:var(--green)}.job-page-hero .page-lead{max-width:780px}.job-detail-wrap{max-width:900px}.job-facts{border:1px solid var(--line);background:var(--line);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-bottom:26px;display:grid;overflow:hidden}.job-facts div{background:var(--white);flex-direction:column;justify-content:center;min-height:104px;padding:18px;display:flex}.job-facts span{color:var(--green);margin-bottom:7px;font-size:12px;font-weight:700}.job-facts strong{color:var(--navy);font-size:15px;line-height:1.5}.job-section{background:#ffffffbf;border:1px solid #1218201a;border-radius:8px;margin-top:18px;padding:25px}.job-section h2{border-bottom:1px solid var(--line);color:var(--navy);margin-bottom:18px;padding-bottom:12px;font-size:17px}.job-section ul{color:var(--muted);gap:8px;display:grid}.job-section li{padding-left:1.15em;font-size:13.5px;position:relative}.job-section li:before{background:var(--green);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:.76em;left:0}.job-section-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.job-section-grid .job-section{height:calc(100% - 18px)}.job-note{color:var(--muted);background:#f7f5ef;border-radius:6px;margin:18px 0 0;padding:12px;font-size:12px}.job-definition-list{display:grid}.job-definition-list>div{grid-template-columns:130px minmax(0,1fr);gap:20px;padding:14px 0;display:grid}.job-definition-list>div+div{border-top:1px solid var(--line)}.job-definition-list dt{color:var(--green);font-size:13px;font-weight:700}.job-definition-list dd{color:var(--ink);margin:0;font-size:14px;font-weight:650}.job-definition-list small{color:var(--muted);font-size:12px;font-weight:400}.job-section address{color:var(--muted);font-size:13.5px;font-style:normal}.job-apply-panel{background:var(--white);color:var(--ink);border:1px solid #1218201a;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:34px;margin-top:28px;padding:28px;display:grid;box-shadow:0 16px 36px #12182014}.job-apply-panel h2{color:var(--navy);margin-bottom:10px}.job-apply-panel p{color:var(--muted);margin-bottom:0;font-size:13px}.job-apply-actions{gap:9px;min-width:250px;display:grid}.job-apply-actions span{overflow-wrap:anywhere;color:var(--green);text-align:center;font-size:12px;font-weight:700}.job-privacy-note{color:var(--muted);margin:12px 0 20px;font-size:11.5px}.job-back-link{color:var(--green);font-size:13px;font-weight:700}@media (max-width:1050px){.job-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.job-card:last-child{grid-column:1/-1}}@media (max-width:820px){.job-list-grid,.job-facts,.job-section-grid,.recruit-partner-note,.job-apply-panel{grid-template-columns:1fr}.job-card:last-child{grid-column:auto}.job-facts div{min-height:auto}.job-section-grid .job-section{height:auto}.job-apply-actions{min-width:0}.job-definition-list>div{grid-template-columns:1fr;gap:6px}}.featured-project{color:var(--white);background:linear-gradient(135deg,#081824 0%,#102f35 58%,#1f493d 100%);border-radius:8px;grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,64px);margin-top:28px;padding:clamp(26px,4vw,48px);display:grid;overflow:hidden;box-shadow:0 20px 48px #12182026}.featured-project-media,.construction-project-promo-image{border:1px solid #ffffff2e;border-radius:12px;justify-self:center;width:min(100%,260px);display:block;position:relative;overflow:hidden;box-shadow:0 22px 54px #0000004d}.featured-project-media img,.construction-project-promo-image img{aspect-ratio:9/16;height:auto;transition:transform .4s}:is(.featured-project-media:hover img,.featured-project-media:focus-visible img,.construction-project-promo-image:hover img,.construction-project-promo-image:focus-visible img){transform:scale(1.035)}.featured-project-play,.construction-project-promo-image span{width:58px;height:58px;color:var(--navy);background:#fffffff0;border-radius:999px;place-items:center;padding-left:4px;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 10px 28px #0000004d}.featured-project .section-kicker{color:var(--soft-gold)}.featured-project h2{color:var(--white);margin-bottom:14px;font-size:clamp(22px,2.2vw,34px);line-height:1.5}.featured-project-copy>p:last-of-type{color:#ffffffe0;max-width:590px;margin-bottom:22px;font-size:13.5px}.featured-project-actions{flex-wrap:wrap;gap:12px;display:flex}.featured-project .button.primary{color:#21180e;background:var(--soft-gold)}.featured-project .button.secondary{color:var(--white);border-color:#ffffff70}.construction-project-promo{color:var(--white);background:linear-gradient(135deg,#0b1d2b 0%,#173d3c 100%)!important}.construction-project-promo-grid{grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);align-items:center;gap:clamp(34px,6vw,74px);display:grid}.construction-project-promo h2{color:var(--white);margin-bottom:16px;font-size:clamp(21px,2vw,30px)}.construction-project-promo .lead{color:#ffffffe0;max-width:640px;margin-bottom:24px}.construction-project-promo .section-kicker{color:var(--soft-gold)}.kominka-hero-image img{object-position:center 56%}.kominka-video-section{background:radial-gradient(circle at 88% 16%,#ead7ad2b,#0000 28%),linear-gradient(135deg,#fdfcf9 0%,#f2eee5 100%)!important}.kominka-video-layout{grid-template-columns:minmax(340px,400px) minmax(0,1fr);align-items:center;gap:clamp(42px,7vw,84px);max-width:1000px;display:grid}.kominka-video-stage{color:var(--white);background:linear-gradient(160deg,#07131d 0%,#102f35 100%);border:1px solid #ffffff24;border-radius:18px;justify-items:center;padding:18px;display:grid;box-shadow:0 24px 64px #08182430}.kominka-video-player{aspect-ratio:9/16;object-fit:contain;background:#081824;border-radius:12px;width:auto;max-width:100%;height:min(640px,72svh);box-shadow:0 16px 42px #0000004d}.kominka-video-spec{color:#ffffffb8;letter-spacing:.04em;margin:13px 0 0;font-size:11.5px;font-weight:650}.kominka-video-copy h2{color:var(--navy);margin-bottom:18px;font-size:clamp(23px,2.3vw,32px);line-height:1.52}.kominka-video-copy>p:not(.section-kicker){max-width:580px;color:var(--muted);margin-bottom:0;font-size:13.5px;line-height:1.92}.kominka-building-plan{gap:10px;margin:24px 0 26px;display:grid}.kominka-building-plan div{background:#ffffffd9;border:1px solid #12182014;border-radius:8px;grid-template-columns:minmax(130px,.42fr) minmax(0,1fr);gap:16px;padding:14px 16px;display:grid}.kominka-building-plan dt{color:var(--green);font-size:12.5px;font-weight:750}.kominka-building-plan dd{color:var(--ink);margin:0;font-size:13px;font-weight:650}.kominka-video-actions{flex-wrap:wrap;gap:12px;display:flex}.social-promotion{color:var(--white);background:linear-gradient(135deg,#10243a 0%,#173d3c 100%);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(240px,.46fr);align-items:center;gap:28px;margin-top:22px;padding:26px;display:grid;box-shadow:0 16px 36px #1218201f}.social-promotion .section-kicker{color:var(--soft-gold)}.social-promotion h2{color:var(--white);margin-bottom:10px}.social-promotion-copy>p:last-child{color:#ffffffe0;margin-bottom:0;font-size:13.5px}.social-promotion-links{gap:12px;display:grid}.social-link{background:#fffffff5;border:1px solid #ffffff42;border-radius:8px;gap:3px;min-height:92px;padding:17px 18px;transition:transform .18s,box-shadow .18s;display:grid}:is(.social-link:hover,.social-link:focus-visible){transform:translateY(-2px);box-shadow:0 16px 32px #00000026}.social-link span{color:#9b3f73;letter-spacing:.04em;font-size:12px;font-weight:700}.social-link.youtube span{color:#c62828}.social-link strong{color:var(--navy);font-size:16px}.social-link small{color:var(--muted);font-size:12px;font-weight:650}.local-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px;display:grid}.local-discovery-card{background:linear-gradient(135deg,#fff 0%,#f9f6ef 100%);border:1px solid #1218201a;border-radius:8px;padding:24px;box-shadow:0 12px 30px #1218200f}.local-discovery-card h2{color:var(--navy);margin-bottom:12px}.local-discovery-card address{color:var(--ink);margin-bottom:12px;font-size:13.5px;font-style:normal;font-weight:700}.local-discovery-card>p:not(.section-kicker){color:var(--muted);margin-bottom:18px;font-size:13.5px}.local-discovery-card .button{width:max-content}.local-discovery-card .social-link{border-color:#1218201a;max-width:360px;min-height:88px}.info-grid dd a{text-underline-offset:3px;-webkit-text-decoration:underline #1f6b5252;text-decoration:underline #1f6b5252}@media (max-width:820px){.kominka-video-layout{grid-template-columns:1fr;gap:34px}.kominka-video-stage{justify-self:center;width:min(100%,430px);padding:12px}.kominka-video-player{width:100%;height:auto;max-height:none}.kominka-video-copy{justify-self:center;max-width:620px}}@media (max-width:520px){.kominka-video-stage{border-radius:14px;padding:9px}.kominka-building-plan div{grid-template-columns:1fr;gap:3px}.kominka-video-actions .button{width:100%}}.footer-social{flex-wrap:wrap;justify-content:center;gap:10px 18px;display:flex}.footer-social a{color:var(--navy);font-weight:680}:is(.footer-social a:hover,.footer-social a:focus-visible){color:var(--green)}.footer-social strong{font-weight:560}@media (max-width:820px){.featured-project,.construction-project-promo-grid,.social-promotion,.local-discovery-grid{grid-template-columns:1fr}.featured-project{padding:26px 22px}.featured-project-media,.construction-project-promo-image{width:min(74vw,280px)}.featured-project-actions .button{width:100%}.social-promotion{padding:23px}.local-discovery-card .button{width:100%}.footer-social{justify-content:flex-start}}
