/*! 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,::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;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]){appearance:button}::file-selector-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{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#15191a;--paper:#f6f4ef;--gold:#a48749;--line:#d7d3c9}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper);width:100%;min-height:100%}body{width:100%;min-height:100%;color:var(--ink);background:#d8d4cd url(/images/loading-joinery.webp) top/100% no-repeat;margin:0;font-family:Helvetica Neue,Noto Sans JP,Arial,sans-serif;overflow-x:hidden}body.is-loading{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.mobile-only,.narrow-only{display:none}.site{background:var(--paper);width:100%;min-height:100svh;transition:background .35s,color .35s;overflow:hidden}.loading-screen{z-index:1000;opacity:1;visibility:visible;background-color:#d8d4cd;background-image:url(/images/loading-joinery.webp);background-position:top;background-repeat:no-repeat;background-size:100%;width:100%;height:min(100svh,900px);min-height:680px;transition:opacity .7s,visibility .7s;position:fixed;top:0;left:0;overflow:hidden}.loading-screen.is-leaving{opacity:0;visibility:hidden}.loading-copy{color:#303131;flex-direction:column;width:max-content;max-width:86vw;display:flex;position:absolute;top:50%;left:7vw;transform:translateY(-52%)}.loading-copy strong{letter-spacing:.09em;white-space:nowrap;font-family:Futura PT,Futura,Century Gothic,Avenir,sans-serif;font-size:clamp(28px,2.7vw,46px);font-weight:500;line-height:.92}.loading-copy span{letter-spacing:.27em;white-space:nowrap;margin-top:23px;font-size:clamp(8px,.72vw,12px);font-weight:500}.loading-copy i{transform-origin:0;background:#60798a;width:100%;height:2px;margin-top:34px;animation:1.7s cubic-bezier(.42,0,.22,1) .3s forwards loadingLine;display:block;transform:scaleX(0)}@keyframes loadingLine{to{transform:scaleX(1)}}.concept-switch{z-index:50;color:#fff;background:#111718;align-items:center;gap:4px;padding:5px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 8px 30px #0002}.concept-switch>span{letter-spacing:.18em;opacity:.55;padding:0 10px;font-size:9px}.concept-switch button{color:#fff;cursor:pointer;letter-spacing:.06em;background:0 0;border:0;padding:10px 14px;font-size:12px}.concept-switch button.active{background:var(--gold);color:#fff}.palette-warmGray{--ink:#191b1b;--paper:#f1eeea;--gold:#8b8580;--accent:#60798a;--accent-dark:#526a78;--service-accent:#c2b8aa;--contact-accent:#c2b8aa;--menu-hover:#817a75;--line:#d7d2cc}.palette-warmGray .header{background:#f1eeeaf0}.palette-warmGray .hero-visual{background:#d9d4cf}.palette-warmGray .services{background:#2e3334}.palette-warmGray .message{background:#e7e1db}.palette-warmGray .contact,.palette-warmGray footer{background:#2e3334}.palette-oysterIvory{--ink:#1b1c1b;--paper:#f5f1e7;--gold:#8d826c;--line:#ddd5c7}.palette-oysterIvory .header{background:#f5f1e7f0}.palette-oysterIvory .hero-visual{background:#ddd5c8}.palette-oysterIvory .services{background:#282722}.palette-oysterIvory .message{background:#eae2d4}.palette-oysterIvory .contact,.palette-oysterIvory footer{background:#23231f}.palette-stoneIvory{--ink:#1c1d1c;--paper:#eee8de;--gold:#776f64;--line:#d3cbc0}.palette-stoneIvory .header{background:#eee8def0}.palette-stoneIvory .hero-visual{background:#d5cec4}.palette-stoneIvory .services{background:#24231f}.palette-stoneIvory .message{background:#e3d9cc}.palette-stoneIvory .contact,.palette-stoneIvory footer{background:#20211f}.header{z-index:20;background:#f6f4eff0;justify-content:space-between;align-items:flex-start;height:112px;padding:28px 0 0 38px;display:flex;position:absolute;inset:0 0 auto}.brand{flex-direction:column;gap:6px;width:max-content;display:flex}.brand strong{letter-spacing:.045em;white-space:nowrap;font-family:Futura PT,Futura,Century Gothic,Avenir,sans-serif;font-size:27px;font-weight:500;line-height:.92}.brand span{font-family:var(--font-zen-kaku),"Zen Kaku Gothic New","Noto Sans JP",sans-serif;letter-spacing:.16em;text-align:center;white-space:nowrap;font-size:9px;font-weight:400;line-height:1}nav{align-items:center;height:84px;display:flex}nav a{color:#2e3334;white-space:nowrap;padding:18px 25px;font-size:13px;font-weight:600;transition:transform .28s cubic-bezier(.2,.75,.25,1),color .28s,text-shadow .28s;position:relative;transform:translateZ(0)}nav a:not(.contact-link):after{content:"";background:var(--menu-hover,#817a75);transform-origin:50%;height:1px;transition:transform .32s cubic-bezier(.2,.75,.25,1);position:absolute;bottom:8px;left:25px;right:25px;transform:scaleX(0)}nav .contact-link{color:#2e3334;letter-spacing:.06em;height:auto;box-shadow:none;background:0 0;border:1px solid #2e333447;margin:0 20px 0 10px;padding:14px 28px;font-size:12px;font-weight:500;transition:transform .3s cubic-bezier(.2,.75,.25,1),border-color .3s,background .3s}@media (hover:hover) and (pointer:fine){nav a:not(.contact-link):hover{color:var(--menu-hover,#817a75);text-shadow:0 8px 18px #15191a29;transform:translateY(-4px)scale(1.055)}nav a:not(.contact-link):hover:after{transform:scaleX(1)}nav .contact-link:hover{box-shadow:none;background:#2e333409;border-color:#2e333485;transform:translateY(-2px)}}nav a:focus-visible{outline:2px solid var(--gold);outline-offset:-4px}.hero{grid-template-rows:max-content minmax(86px,1fr);grid-template-columns:52% 48%;height:auto;min-height:max(720px,min(100svh,900px));padding:112px 0 18px;display:grid;position:relative}.hero-copy{z-index:2;grid-area:1/1;padding:95px 28px 55px 4.5vw}.eyebrow{letter-spacing:.22em;color:var(--gold);margin:0 0 28px;font-size:12px;font-weight:700}.hero h1{letter-spacing:.025em;margin:0 0 26px;font-size:clamp(46px,3.2vw,56px);font-weight:650;line-height:1.32}.lead{font-size:16px;font-weight:550;line-height:2}.primary-button{isolation:isolate;background:var(--gold);color:#fff;letter-spacing:.12em;justify-content:space-between;align-items:center;width:290px;margin-top:26px;padding:20px 28px;font-weight:700;transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s,color .28s;display:flex;position:relative;overflow:hidden;box-shadow:0 0 #48381800}.primary-button:before{content:"";z-index:-1;background:#2e3334;transition:transform .42s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0;transform:translate(-102%)}.primary-button-label{font-size:15px;transition:transform .38s cubic-bezier(.2,.8,.2,1);position:relative}.primary-button-arrow,.contact-action-arrow{font-size:24px;font-weight:300;position:relative}.primary-button-arrow{transition:transform .38s cubic-bezier(.2,.8,.2,1)}@media (hover:hover) and (pointer:fine){.primary-button:hover{transform:translateY(-5px)scale(1.018);box-shadow:0 16px 30px #48381840}.primary-button:hover:before{transform:translate(0)}.primary-button:hover .primary-button-label{transform:translate(4px)}.primary-button:hover .primary-button-arrow{transform:translate(8px)}}.primary-button:focus-visible{outline-offset:4px;outline:2px solid #2e3334;transform:translateY(-3px)}.hero-visual{aspect-ratio:16/9;background:#d8d5ce;grid-area:1/2;place-self:end start;width:calc(100% - 4vw);margin:0 4vw 55px 0;position:relative;overflow:hidden}.hero-slides{position:absolute;inset:0}.hero-visual img{object-fit:cover;object-position:center;opacity:0;width:100%;height:100%;transition:opacity 1.25s;position:absolute;inset:0;transform:scale(1.035)}.hero-visual img.active{opacity:1;animation:7.2s linear both heroDrift}.image-caption{color:#fff;letter-spacing:.2em;margin:0;font-size:10px;position:absolute;bottom:30px;right:34px}.image-caption span{color:#f1eeea;text-shadow:0 1px 7px #0000008c;margin-right:15px;font-weight:700}.hero-progress{z-index:3;background:#f1eeea80;height:2px;position:absolute;bottom:0;left:0;right:0}.hero-progress i{background:var(--accent,#60798a);transform-origin:0;width:100%;height:100%;animation:6s linear forwards heroProgress;display:block;transform:scaleX(0)}.hero-copy>*{opacity:0;animation:.8s cubic-bezier(.2,.7,.2,1) forwards heroIn;transform:translateY(22px)}.hero-copy .eyebrow{animation-delay:.15s}.hero-copy h1{animation-delay:.28s}.hero-copy .lead{animation-delay:.41s}.hero-copy .primary-button{animation-delay:.54s}@keyframes heroIn{to{opacity:1;transform:none}}@keyframes heroDrift{0%{transform:scale(1.045)}to{transform:scale(1.01)}}@keyframes heroProgress{to{transform:scaleX(1)}}.scroll-note{width:max-content;color:var(--ink);letter-spacing:.2em;cursor:pointer;background:0 0;border:0;flex-direction:column;grid-area:2/1/auto/-1;place-self:center;align-items:center;gap:9px;margin:8px auto 0;padding:0 18px;font-size:9px;display:flex;position:relative;bottom:auto;left:auto;transform:none}.scroll-note span{background:#60798a38;width:2px;height:46px;display:block;position:relative;overflow:hidden}.scroll-note span:after{content:"";background:var(--accent,#60798a);transform-origin:top;transition:transform .12s ease-out;position:absolute;inset:0;transform:scaleY(0)}.scroll-note:hover span:after{transition-duration:.6s;transition-timing-function:linear;transform:scaleY(1)}.scroll-note:focus-visible{outline:1px solid var(--accent-dark,#526a78);outline-offset:4px}.section{border-top:1px solid var(--line);padding:120px 7vw;position:relative}.reveal{opacity:0;transition:opacity .85s,transform .85s cubic-bezier(.2,.7,.2,1);transform:translateY(36px)}.reveal.is-visible{opacity:1;transform:none}.section-no{writing-mode:vertical-rl;letter-spacing:.18em;color:#777;margin:0;font-size:9px;position:absolute;top:130px;left:2.5vw}.section-heading h2,.message h2,.contact h2{letter-spacing:.04em;margin:0;font-size:clamp(36px,4vw,60px);line-height:1.35}.intro-emphasis{letter-spacing:.08em;font-weight:600}.intro{grid-template-columns:42% 58%;min-height:100svh;display:grid}.intro .section-heading{padding-right:3vw}.intro .intro-belief{color:var(--accent-dark,#526a78);letter-spacing:.05em;margin:48px 0 0;font-size:clamp(19px,1.5vw,22px);font-weight:600;line-height:1.75}.intro-copy{max-width:680px;padding-top:46px;font-size:16px;line-height:2.3}.intro-copy p{margin:0 0 22px}.services{color:#fff;background:#171c1d}.services .section-heading{margin-bottom:65px}.service-grid{border-top:1px solid #ffffff2e;grid-template-columns:repeat(3,1fr);display:grid}.service-grid article{border-bottom:1px solid #ffffff2e;border-right:1px solid #ffffff2e;min-height:320px;padding:35px 30px;transition:background .35s,transform .35s}.service-grid article:hover{background:#ffffff08;transform:translateY(-6px)}.service-grid article:nth-child(3n){border-right:0}.service-grid article:nth-child(n+4){border-bottom:0}.service-grid article>span{color:var(--service-accent,var(--accent,#60798a));font:12px monospace}.service-grid h3{white-space:pre-line;min-height:60px;margin:75px 0 20px;font-size:20px;line-height:1.5}.service-grid p{color:#c8cccb;font-size:13px;line-height:1.9}.works{grid-template-columns:42% 58%;min-height:100svh;display:grid}.heading-note{color:#777;margin-top:28px;font-size:13px}.works-list{border-top:1px solid var(--line);margin:60px 0 0;padding:0;list-style:none}.works-list li{border-bottom:1px solid var(--line);align-items:center;gap:30px;padding:27px 10px;font-size:16px;transition:padding .3s,background .3s;display:flex}.works-list li:hover{background:#ffffff70;padding-left:22px}.works-list span{color:var(--gold);font:11px monospace}.message{background:#ebe7dd;grid-template-columns:45% 55%;min-height:100svh;display:grid}.message-body{max-width:640px;padding-top:42px;font-size:15px;line-height:2.15}.message-body p{margin:0 0 22px}.signature{text-align:right;margin-top:55px!important}.signature strong{margin-left:18px;font-size:20px}.company{grid-template-columns:35% 65%;min-height:100svh;display:grid}.company-content{min-width:0}.company dl{margin:45px 0 0}.company dl div{border-bottom:1px solid var(--line);grid-template-columns:150px 1fr;padding:23px 0;font-size:14px;display:grid}.company dt{color:#777}.company dd{margin:0;line-height:1.9}.company-list{margin:0;padding:0;list-style:none}.company-list li+li{margin-top:3px}.company-access{grid-template-columns:minmax(0,1.18fr) minmax(220px,.82fr);align-items:center;gap:clamp(28px,4vw,62px);margin-top:58px;padding-bottom:8px;display:grid}.company-map a{transition:opacity .28s,transform .28s;display:block}.company-map img{width:100%;height:auto;display:block}.company-map .company-map-caption{border-bottom:1px solid var(--line);color:#2e3334;letter-spacing:.1em;justify-content:space-between;align-items:center;padding:16px 2px 13px;font-size:11px;font-weight:600;display:flex}.company-map-caption span{font-size:19px;font-weight:300}.company-access-copy{color:#45494a;align-self:center;font-size:15px;line-height:2;transform:translateY(-20px)}.company-access-copy p{margin:0 0 24px}.company-access-copy .company-access-label{color:#2e3334;letter-spacing:.14em;margin-bottom:10px;font-size:13px;font-weight:700}.company-access-copy .company-access-heading{margin-top:38px}@media (hover:hover) and (pointer:fine){.company-map a:hover{opacity:.82}.company-map>a:first-child:hover{transform:translateY(-3px)}}.contact{color:#fff;text-align:center;background:#111718;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;display:flex}.contact .eyebrow{color:var(--contact-accent,var(--gold))}.contact h2{font-size:clamp(30px,3.3vw,48px)}.contact-description{color:#c7ccca;letter-spacing:.04em;margin:26px 0 0;font-size:14px;line-height:2}.contact-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:min(760px,90%);margin-top:42px;display:grid}.contact-action{text-align:left;letter-spacing:.08em;background:0 0;border:1px solid #ffffff80;justify-content:space-between;align-items:center;gap:20px;min-height:88px;padding:18px 24px;font-weight:700;transition:background .32s,border-color .32s,transform .32s;display:flex}.contact-action-copy{flex-direction:column;gap:8px;font-size:15px;display:flex}.contact-action-copy small{color:#aeb4b3;letter-spacing:.08em;margin:0;font-size:10px;font-weight:500}.contact-action-arrow{transition:transform .32s cubic-bezier(.2,.75,.25,1)}.contact-action-line{border-color:#ffffff57}.contact-line-main{align-items:center;gap:15px;min-width:0;display:flex}.contact-line-icon{object-fit:contain;flex:none;width:36px;height:36px;display:block}.contact-action-status{color:#aeb4b3;letter-spacing:.12em;border:1px solid #ffffff40;flex:none;padding:6px 9px;font-size:9px;font-weight:600}.contact-action.is-preparing{color:#d4d7d6;cursor:default}@media (hover:hover) and (pointer:fine){.contact-action-form:hover{background:#ffffff0b;border-color:#ffffffc7;transform:translateY(-2px)}.contact-action-form:hover .contact-action-arrow{transform:translate(6px)}}.contact-action-form:focus-visible{outline-offset:4px;background:#ffffff0b;border-color:#ffffffc7;outline:1px solid #fff}.contact-action-form:focus-visible .contact-action-arrow{transform:translate(6px)}.contact-response-note{color:#909696;margin-top:18px}.contact-privacy-link{color:#aeb4b3;letter-spacing:.1em;text-underline-offset:4px;margin-top:15px;font-size:10px;text-decoration:underline}.site-footer{color:#fff;border-top:2px solid var(--accent,#60798a);background:#2e3334;padding:0;position:relative}.footer-main{grid-template-columns:1.15fr .8fr 1.25fr;gap:clamp(42px,7vw,110px);padding:64px 7vw 54px;display:grid}.footer-brand-block .brand{width:max-content}.footer-brand-block .brand strong{font-size:25px}.footer-brand-block .brand span{color:#c4c8c7}.footer-tagline{color:#aeb4b3;letter-spacing:.16em;margin:27px 0 0;font-size:10px;font-weight:600;line-height:1.8}.footer-column{min-width:0}.footer-label{color:#c2b8aa;letter-spacing:.18em;margin:0 0 24px;font-size:10px;font-weight:700}.footer-navigation{grid-template-columns:1fr;gap:11px;display:grid}.footer-navigation a{color:#d9dcdb;letter-spacing:.12em;width:max-content;font-size:11px;font-weight:600;transition:color .25s,transform .25s}.footer-office address{color:#c7ccca;font-size:12px;font-style:normal;line-height:2}.back-to-top{color:#fff;letter-spacing:.15em;align-items:center;gap:16px;margin-top:28px;font-size:10px;font-weight:700;transition:color .25s,transform .25s;display:inline-flex}.back-to-top span{color:var(--accent,#60798a);font-size:17px;font-weight:400}@media (hover:hover) and (pointer:fine){.footer-navigation a:hover,.back-to-top:hover{color:#c2b8aa;transform:translate(4px)}}.footer-bottom{border-top:1px solid #ffffff20;justify-content:space-between;align-items:flex-end;gap:42px;padding:24px 7vw 30px;display:flex}.footer-disclaimer{color:#999f9d;letter-spacing:.04em;margin:0;font-size:10px;line-height:1.8}.footer-privacy-link{color:#b7bcba;letter-spacing:.14em;margin-top:12px;font-size:9px;transition:color .25s;display:inline-block}.footer-privacy-link:hover,.contact-privacy-link:hover{color:#fff}.footer-copyright{color:#8e9492;letter-spacing:.1em;white-space:nowrap;flex:none;margin:0;font-size:9px}.privacy-page{color:#2e3334;background:#f6f4ef;min-height:100svh}.privacy-header{border-bottom:1px solid #d8d3ca;justify-content:space-between;align-items:center;padding:28px 7vw;display:flex}.privacy-brand{flex-direction:column;gap:7px;width:max-content;display:flex}.privacy-brand strong{letter-spacing:.055em;font-family:Futura PT,Futura,Century Gothic,Avenir,sans-serif;font-size:24px;font-weight:500;line-height:.92}.privacy-brand span{font-family:var(--font-zen-kaku),"Zen Kaku Gothic New","Noto Sans JP",sans-serif;letter-spacing:.15em;text-align:center;font-size:8px}.privacy-back{color:#60798a;letter-spacing:.12em;font-size:10px;font-weight:600}.privacy-main{width:min(860px,86vw);margin:0 auto;padding:92px 0 120px}.privacy-kicker{color:#60798a;letter-spacing:.2em;margin:0 0 14px;font-size:10px;font-weight:600}.privacy-main h1{font-family:var(--font-zen-kaku),"Zen Kaku Gothic New","Noto Sans JP",sans-serif;letter-spacing:.06em;margin:0 0 58px;font-size:clamp(30px,4vw,48px);font-weight:500}.privacy-intro{margin:0 0 62px;font-size:15px;line-height:2.15}.privacy-section{border-top:1px solid #d8d3ca;padding:35px 0}.privacy-section h2{letter-spacing:.05em;margin:0 0 18px;font-size:17px;font-weight:600}.privacy-section p,.privacy-section li{font-size:14px;line-height:2}.privacy-section p{margin:0}.privacy-section ul{margin:0;padding-left:1.4em}.privacy-date{color:#727776;margin-top:48px;font-size:12px;line-height:1.9}@media (width<=720px){.privacy-header{padding:23px 22px}.privacy-brand strong{font-size:20px}.privacy-main{width:auto;padding:68px 24px 90px}.privacy-main h1{margin-bottom:42px;font-size:29px}.privacy-intro{margin-bottom:48px;font-size:14px}.privacy-section{padding:30px 0}}.basic{--paper:#fff;--gold:#626b66;--line:#dedede}.basic .header{background:#fff;border-bottom:1px solid #e5e5e5;align-items:flex-start;height:96px;padding:27px 5vw;position:relative}.basic nav{height:auto}.basic nav a{padding:13px 18px;font-size:12px;font-weight:500}.basic nav a:not(.contact-link):after{bottom:5px;left:18px;right:18px}.basic nav .contact-link{height:auto;color:var(--ink);background:0 0;border:1px solid #222;padding:13px 22px}@media (hover:hover) and (pointer:fine){.basic nav .contact-link:hover{background:var(--ink);color:#fff;box-shadow:0 10px 22px #15191a29}}.basic .hero{border-bottom:1px solid var(--line);background:#f2f2f0;grid-template-columns:55% 45%;min-height:690px;max-height:760px;padding-top:0}.basic .intro{border-top:0}.basic .hero-copy{padding:145px 6vw 90px}.basic .hero h1{font-size:clamp(44px,4.4vw,66px);line-height:1.4}.basic .primary-button{background:var(--ink)}.basic .hero-visual{background:#d9dcd7;margin:0}.basic .hero-visual img{object-position:68% center;filter:saturate(.72)contrast(.94)}.basic .section-no,.basic .scroll-note{display:none}.basic .section{padding:100px 8vw}.basic .eyebrow{color:#737a76}.basic .intro,.basic .works,.basic .message,.basic .company{grid-template-columns:38% 62%;gap:7vw}.basic .services{color:var(--ink);background:#fff}.basic .service-grid,.basic .service-grid article{border-color:#ddd}.basic .service-grid p{color:#666}.basic .message{background:#f4f4f2}.basic .contact,.basic footer{background:#2d322f}.basic.modernAccent{--ink:#252928;--paper:#f7f7f5;--gold:#8a918d;--line:#d6dad7}.basic.modernAccent .header{background:#f8f8f6;border-color:#d9dcda}.basic.modernAccent .hero{background:#eceeec}.basic.modernAccent .hero-visual{background:#d6dad7}.basic.modernAccent .eyebrow{color:#7f8782}.basic.modernAccent .primary-button{color:#252928;box-shadow:none;background:#cfd3d0}.basic.modernAccent .primary-button:before{background:#929a95}.basic.modernAccent .primary-button:hover{color:#fff;box-shadow:0 14px 28px #48504c2e}.basic.modernAccent .primary-button:focus-visible{outline-color:#7f8782}.basic.modernAccent .services{color:#252928;background:#eceeec}.basic.modernAccent .service-grid,.basic.modernAccent .service-grid article{border-color:#d2d6d3}.basic.modernAccent .service-grid article:hover{background:#e2e5e3}.basic.modernAccent .service-grid article>span{color:#7f8782}.basic.modernAccent .service-grid p{color:#5f6562}.basic.modernAccent .message{background:#e8ebe8}.basic.modernAccent .contact,.basic.modernAccent footer{background:#646b67}.basic.modernAccent .concept-switch button.active{background:#8a918d}.basic.modernAccent .image-caption span{color:#d7dbd8}@media (width<=1050px){nav a{display:none}nav .contact-link{display:block}.service-grid{grid-template-columns:repeat(2,1fr)}.service-grid article:nth-child(3n){border-right:1px solid #ffffff2e}.service-grid article:nth-child(2n){border-right:0}.service-grid article:nth-child(n+4){border-bottom:1px solid #ffffff2e}.service-grid article:nth-child(n+5){border-bottom:0}}@media (width>=721px) and (width<=1200px){.narrow-only{display:inline}.hero{grid-template-rows:auto auto auto;grid-template-columns:1fr;padding-top:112px}.hero-copy{grid-area:1/1;padding:78px 8vw 50px}.hero h1{letter-spacing:.025em;font-size:clamp(43px,6vw,50px);line-height:1.3}.hero-visual{grid-area:2/1;place-self:auto stretch;width:auto;margin:0 7vw 48px}.scroll-note{grid-area:3/1;margin-top:0}}@media (width>=1201px) and (width<=1450px){.hero h1{font-size:clamp(43px,3.15vw,46px)}}@media (width>=721px) and (height<=820px){.header{height:96px;padding-top:22px}nav{height:74px}nav a{padding-top:14px;padding-bottom:14px}nav .contact-link{height:auto}.hero{min-height:680px;padding-top:96px}.hero-copy{padding-top:clamp(75px,11vh,95px);padding-bottom:40px}.hero h1{font-size:clamp(42px,3.75vw,60px)}.primary-button{margin-top:22px;padding-block:18px}.hero-visual{margin:0 4vw 40px 0}.scroll-note{margin-top:4px}}@media (width<=720px){.mobile-only,.narrow-only{display:inline}body{background-position:43%;background-size:cover}.loading-screen{background-position:43%;background-size:cover;height:100svh;min-height:0}.loading-copy{width:max-content;max-width:86vw;top:44%;left:7vw;transform:translateY(-50%)}.loading-copy strong{letter-spacing:.11em;font-size:clamp(24px,7.3vw,36px)}.loading-copy span{letter-spacing:.16em;margin-top:17px;font-size:7px}.loading-copy i{margin-top:24px}.concept-switch{justify-content:center;gap:2px;bottom:8px;left:8px;right:8px}.concept-switch>span{display:none}.concept-switch button{padding:9px 8px;font-size:10px}.header,.basic .header{height:78px;padding:20px 20px 0;position:absolute}.brand strong{font-size:21px}.brand span{letter-spacing:.13em;font-size:7px}.header nav{height:38px}nav .contact-link{height:auto;margin:0;font-size:10px;padding:10px 12px!important}.hero,.basic .hero{height:auto;min-height:max(720px,100svh);max-height:none;padding-top:78px;display:block}.hero-copy,.basic .hero-copy{padding:98px 22px 54px}.hero-copy .eyebrow{letter-spacing:.18em;margin-bottom:25px;font-size:10px;line-height:1.7}.hero h1,.basic .hero h1{letter-spacing:.025em;margin-bottom:27px;font-size:clamp(34px,9.8vw,37px);line-height:1.34}.lead{font-size:13px;line-height:1.9}.primary-button{width:100%}.hero-visual,.basic .hero-visual{aspect-ratio:4/3;width:auto;height:auto;margin:0 20px}.hero-visual img,.basic .hero-visual img{object-position:67% center}.image-caption{font-size:8px;bottom:16px;right:18px}.scroll-note{width:max-content;margin:34px auto 24px;padding-top:0;position:relative;bottom:auto;left:auto;transform:none}.section,.basic .section{padding:80px 26px}.section-no{display:none}.intro,.works,.message,.company,.basic .intro,.basic .works,.basic .message,.basic .company{min-height:auto;display:block}.intro-copy,.message-body{padding-top:45px}.intro .section-heading{padding-right:0}.intro .intro-belief{margin-top:32px;font-size:19px;line-height:1.7}.service-grid{grid-template-columns:1fr}.service-grid article,.service-grid article:nth-child(3n),.service-grid article:nth-child(2n){border-bottom:1px solid #ffffff2e;border-right:0;min-height:240px}.service-grid article:last-child{border-bottom:0}.service-grid h3{margin-top:55px}.works-list{margin-top:50px}.works-list li{align-items:flex-start;font-size:14px}.company dl div{grid-template-columns:1fr;gap:10px}.company-access{grid-template-columns:1fr;gap:36px;margin-top:42px}.company-access-copy{padding:0 2px;transform:none}.company-access-copy .company-access-heading{margin-top:32px}.contact{min-height:100svh}.contact-actions{grid-template-columns:1fr;gap:12px;width:min(348px,90%)}.contact-action{min-height:82px;padding:17px 20px}.contact-line-icon{width:40px;height:40px}.footer-main{grid-template-columns:1fr;gap:44px;padding:54px 26px 48px}.footer-brand-block .brand strong{font-size:25px}.footer-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:18px;padding:24px 26px 88px}.footer-disclaimer-break{display:none}.footer-copyright{white-space:normal;line-height:1.7}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.loading-copy i{animation:none;transform:scaleX(1)}.loading-screen{transition-duration:.01ms}.hero-visual img,.hero-copy>*{opacity:1;animation:none;transform:none}.hero-progress i{animation:none;transform:scaleX(1)}.reveal{opacity:1;transition:none;transform:none}nav a,nav a:after{transition:none!important}}
