.contact-wrap{width:min(90%,1380px);margin:auto}.contact-page{position:relative;overflow:hidden;padding:205px 0 145px;background:#f3ede5;color:#38231b}.contact-lines{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(12.5% - 1px),rgba(76,45,32,.035) calc(12.5% - 1px),rgba(76,45,32,.035) 12.5%)}.contact-lines:before{content:"";position:absolute;right:-230px;top:70px;width:540px;height:540px;border:1px solid rgba(102,61,43,.08);border-radius:50%}.contact-lines span{position:absolute;left:48%;top:0;width:1px;height:480px;background:linear-gradient(transparent,rgba(106,64,44,.11),transparent);transform:rotate(35deg)}.contact-heading{position:relative;display:grid;grid-template-columns:180px 1fr .55fr;gap:clamp(30px,5vw,80px);align-items:end}.contact-index{margin:0 0 11px;color:#64483d;font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.contact-kicker{display:flex;align-items:center;gap:14px;margin:0 0 22px;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.contact-kicker>span{width:36px;height:1px;background:#9b6348}.contact-heading h1{margin:0;font:500 clamp(60px,7vw,105px)/.82 var(--serif);letter-spacing:-.045em}.contact-heading h1 em,.location-content h2 em{color:#704533;font-weight:500}.contact-heading>p:last-child{margin:0 0 6px;color:#543d33;font:500 17px/1.6 var(--serif)}
.contact-panel{position:relative;display:grid;grid-template-columns:1.25fr .75fr;margin-top:95px;background:#fbf8f2;box-shadow:0 30px 80px rgba(53,31,21,.12)}.contact-form{padding:65px 6vw}.contact-form__heading,.contact-info__heading{display:flex;gap:22px;align-items:flex-start;margin-bottom:50px}.contact-form__heading>span,.contact-info__heading>span{color:#8b6655;font-size:9px;letter-spacing:.12em}.contact-form__heading p,.contact-info__heading p{margin:0;color:#36231b;font:500 27px/1 var(--serif)}.contact-form__heading small{display:block;margin-top:9px;color:#826e62;font-size:9px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{margin-bottom:25px}.field label{display:block;margin-bottom:9px;color:#5a4034;font-size:8px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.field input,.field select,.field textarea{width:100%;padding:13px 0;border:0;border-bottom:1px solid #c8b7a9;border-radius:0;outline:0;background:transparent;color:#38251d;font:500 16px/1.3 var(--serif)}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#714632}.field input::placeholder,.field textarea::placeholder{color:#a49184}.contact-form button{min-height:56px;margin-top:8px;padding:0 24px;border:0;background:#3b241c;color:#fff8ef;font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:not-allowed}.contact-form button span{margin-left:45px}.form-status{margin:13px 0 0;color:#907c70;font-size:8px;line-height:1.5}
.contact-info{padding:65px 5vw;background:#3a241c;color:#f4e9df}.contact-info__heading p{color:#f4e9df}.contact-info__heading>span{color:#c99c81}.contact-detail{padding:25px 0;border-top:1px solid rgba(255,255,255,.13)}.contact-detail small{display:block;margin-bottom:10px;color:#b9a297;font-size:8px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.contact-detail a{display:flex;justify-content:space-between;gap:20px;color:#f4e9df;font:500 18px/1.3 var(--serif);text-decoration:none}.contact-detail address{color:#e5d6cc;font:500 17px/1.6 var(--serif);font-style:normal}.contact-note{margin:35px 0 0;color:#a99083;font-size:9px;line-height:1.65}
.location-panel{display:grid;grid-template-columns:1.2fr .8fr;min-height:650px;background:#2c1b16;color:#f4e9df}.location-map{position:relative;overflow:hidden;background:#d8c9ba}.map-grid{position:absolute;inset:0;background:linear-gradient(32deg,transparent 46%,rgba(81,57,45,.14) 47%,rgba(81,57,45,.14) 48%,transparent 49%),linear-gradient(118deg,transparent 49%,rgba(81,57,45,.1) 50%,rgba(81,57,45,.1) 51%,transparent 52%),repeating-linear-gradient(90deg,transparent 0,transparent 89px,rgba(83,57,44,.08) 90px),repeating-linear-gradient(0deg,transparent 0,transparent 89px,rgba(83,57,44,.08) 90px)}.map-road{position:absolute;display:block;background:#eee6dd;box-shadow:0 0 0 1px rgba(97,69,55,.11)}.map-road--one{left:-10%;top:48%;width:120%;height:22px;transform:rotate(-13deg)}.map-road--two{left:46%;top:-10%;width:18px;height:120%;transform:rotate(22deg)}.map-pin{position:absolute;left:53%;top:44%;display:grid;justify-items:center;color:#40291f}.map-pin i{width:38px;height:38px;margin-bottom:16px;display:block;border:10px solid #73452f;border-radius:50% 50% 50% 0;background:#f5ece3;box-shadow:0 12px 25px rgba(49,29,20,.25);transform:rotate(-45deg)}.map-pin strong{padding:8px 12px;background:#f5ece3;font:600 12px/1 var(--serif)}.map-pin small{margin-top:6px;font-size:8px;letter-spacing:.12em;text-transform:uppercase}.location-content{display:flex;flex-direction:column;justify-content:center;padding:8vw}.location-content h2{margin:0;font:500 clamp(50px,5vw,76px)/.89 var(--serif);letter-spacing:-.035em}.location-content h2 em{color:#d2a185}.location-content address{margin:35px 0;color:#c9b3a6;font:500 18px/1.6 var(--serif);font-style:normal}.location-content>a{width:max-content;padding-bottom:8px;border-bottom:1px solid #b98569;color:#f4e9df;font-size:9px;font-weight:600;letter-spacing:.13em;text-decoration:none;text-transform:uppercase}.location-content>a span{margin-left:35px}
@media(max-width:1000px){.contact-heading{grid-template-columns:110px 1fr}.contact-heading>p:last-child{grid-column:2;max-width:600px}.contact-panel{grid-template-columns:1fr}.contact-info{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.contact-info__heading,.contact-note{grid-column:1/-1}.location-panel{grid-template-columns:1fr}.location-map{min-height:520px}}
@media(max-width:650px){.contact-page{padding:145px 0 95px}.contact-heading{grid-template-columns:1fr}.contact-heading>p:last-child{grid-column:auto}.contact-heading h1{font-size:clamp(55px,16vw,78px)}.contact-panel{margin-top:65px}.contact-form,.contact-info{padding:45px 24px}.field-row,.contact-info{grid-template-columns:1fr}.contact-info__heading,.contact-note{grid-column:auto}.location-map{min-height:400px}.location-content{padding:80px 5vw}.map-pin{left:45%}}
@media(max-width:430px){.contact-page{padding-top:125px}.contact-heading h1{font-size:52px}.contact-form__heading p,.contact-info__heading p{font-size:24px}.contact-form button{width:100%;display:flex;align-items:center;justify-content:space-between}.location-map{min-height:340px}.location-content h2{font-size:47px}}
