@font-face{font-family:Barlow;src:url(barlow-regular.ttf) format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Barlow;src:url(barlow-bold.ttf) format('truetype');font-weight:700;font-display:swap}
:root{--paper:#f5f5ef;--ink:#213948;--muted:#64756c;--accent:#ba8f65;--cut:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px)}
*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Barlow,Arial,sans-serif;background:radial-gradient(ellipse at 12% 17%,rgba(230,231,215,.38),transparent 35%),var(--paper) url(geometry.svg) center top/1600px 1150px repeat-y;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}svg,img{display:block}a{color:inherit}::selection{background:#dddfcf}h1,h2,p{margin-top:0}.skip-link{position:absolute;top:-70px;left:18px;background:var(--ink);color:#fff;padding:13px 18px;z-index:20}.skip-link:focus{top:14px}.site-header{max-width:1040px;margin:0 auto;border-bottom:1px solid #d8dfd6;padding:26px 0 23px}.site-header nav{display:flex;align-items:center;justify-content:center;gap:12px}.nav-link{display:flex;align-items:center;justify-content:center;gap:10px;min-width:125px;min-height:49px;padding:0 20px;text-decoration:none;font-size:16px;background:#e8ede6;clip-path:var(--cut);transition:transform .18s,background .18s,color .18s}.nav-link svg{width:18px;height:18px}.nav-privacy{background:#e5edf0}.nav-terms{background:#ede8df}.nav-contact{background:#e8ece2}.nav-link[aria-current=page]{background:var(--ink);color:#fff;box-shadow:inset 0 -2px var(--accent)}.nav-link:hover{background:#d5dfd4;transform:translateY(-2px)}.nav-link[aria-current=page]:hover{background:#34525e}.nav-link:active{transform:translateY(1px)}.nav-link:focus-visible{outline:0;background:#a77a50;color:#fff}.home-main{max-width:1040px;margin:0 auto;padding:0 0 64px}.hero{padding:58px 0 47px;text-align:center}.hero h1{font-size:82px;line-height:1.04;letter-spacing:-2.8px;font-weight:400;margin-bottom:22px}.hero p{font-size:25px;line-height:1.48;color:#6a7d6f;margin:0}.gallery-shell{max-width:620px;margin:0 auto}.gallery-grid{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 28px;outline:none}.gallery-grid:focus-visible{outline:2px solid #879c88;outline-offset:7px}.shot{min-width:0;margin:0}.shot img{width:100%;height:auto;aspect-ratio:1179/2556;object-fit:contain;border:1px solid #dfe5dd;box-shadow:0 10px 35px rgba(30,51,42,.035)}.gallery-controls{display:none}.site-footer{max-width:1040px;margin:0 auto;padding:25px 0 30px;border-top:1px solid #d8dfd6}.site-footer p{color:#65766b;font-size:12px;line-height:1.7;text-align:center;margin:0}.legal-main{max-width:790px;margin:0 auto;padding:52px 0 67px}.legal-content h1{font-size:48px;line-height:1.15;font-weight:400;letter-spacing:-1.5px;margin-bottom:32px}.legal-content h2{font-size:21px;line-height:1.4;font-weight:700;margin:33px 0 12px}.legal-content p{font-size:17px;line-height:1.85;margin-bottom:18px;color:#344d4a;overflow-wrap:anywhere}.contact-main{max-width:1040px;margin:0 auto;min-height:calc(100svh - 190px);padding:48px 0 70px}.contact-main>h1{font-size:56px;font-weight:400;letter-spacing:-1.5px;text-align:center;margin-bottom:38px}.contact-layout{display:grid;grid-template-columns:minmax(0,650px) minmax(0,1fr);gap:58px;align-items:start}.form-panel{padding:30px;background:rgba(255,255,252,.82);border:1px solid #dbe3d9;box-shadow:0 12px 35px rgba(36,59,43,.025)}.form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.form-field{min-width:0;margin-bottom:20px}.form-field label{font-size:16px;display:block;margin-bottom:9px}.form-field input,.form-field textarea{width:100%;border:1px solid #c9d4c8;background:#f6f8f2;color:var(--ink);padding:13px 14px;outline:none;border-radius:0;font-size:17px;min-height:48px}.form-field textarea{resize:vertical;min-height:156px;line-height:1.5}.form-field input:focus,.form-field textarea:focus{border-color:#6d8e74;box-shadow:0 0 0 2px rgba(88,122,99,.12)}.form-field [aria-invalid=true]{border-color:#b83535}.field-error,.form-error{font-size:14px;color:#b52d31;line-height:1.5;margin:7px 0 0}.field-error:empty,.form-error:empty{display:none}.send-button{display:flex;gap:24px;align-items:center;justify-content:center;min-height:49px;padding:13px 24px;font-size:16px;border:0;background:var(--ink);color:#fff;clip-path:var(--cut);cursor:pointer;transition:background .2s,transform .15s}.send-button svg{width:21px;height:21px}.send-button:hover{background:#3b5c62}.send-button:active{transform:translateY(2px)}.send-button:disabled{opacity:.6;cursor:wait}.send-button:focus-visible{outline:0;background:#a77a50}.company-details{margin-top:18px;padding-top:24px;border-top:1px solid #b7c8b9}.company-details p{font-size:18px;line-height:1.7;margin-bottom:21px}.company-details .contact-email{font-size:23px;line-height:1.4;overflow-wrap:anywhere;margin-bottom:29px}.success-dialog{width:365px;max-width:calc(100vw - 36px);padding:0;border:1px solid #d5dfd1;color:var(--ink);background:#fafbf5;box-shadow:0 24px 85px rgba(27,44,34,.2)}.success-dialog::backdrop{background:rgba(33,57,48,.3);backdrop-filter:blur(3px)}.success-inner{padding:34px;text-align:center}.success-inner>svg{width:54px;height:54px;stroke:#538568;margin:0 auto 23px}.success-inner h2{font-size:25px;font-weight:400;margin-bottom:27px}.success-inner button{width:100%;padding:14px 20px;min-height:48px;border:0;background:#4e7c61;color:white;font-size:16px;cursor:pointer;clip-path:var(--cut)}.success-inner button:hover{background:#355c46}.success-inner button:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
@media(max-width:1135px){.site-header,.home-main,.contact-main,.site-footer{margin-left:40px;margin-right:40px}.legal-main{margin-left:48px;margin-right:48px}.contact-layout{gap:35px}.company-details .contact-email{font-size:21px}}@media(max-width:800px){.contact-layout{grid-template-columns:1.5fr 1fr;gap:26px}.form-panel{padding:24px}.company-details p{font-size:16px}.company-details .contact-email{font-size:20px}.form-row{gap:14px}}@media(max-width:640px){body{background-size:auto,1100px auto;background-position:0 0,65% 0}.site-header,.home-main,.contact-main,.site-footer{margin-left:24px;margin-right:24px}.site-header{padding:20px 0}.site-header nav{gap:7px}.nav-link{min-width:0;flex:1;min-height:48px;padding:0 7px;font-size:14px;gap:6px}.nav-link svg{width:15px;height:15px}.hero{padding:39px 0 32px}.hero h1{font-size:59px;letter-spacing:-2px;margin-bottom:17px}.hero p{font-size:21px}.home-main{padding-bottom:39px}.gallery-shell{max-width:100%}.gallery-grid{display:flex;gap:18px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x pan-y;outline:none}.gallery-grid::-webkit-scrollbar{display:none}.shot{flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always}.shot img{box-shadow:none}.gallery-controls{display:flex;justify-content:center;gap:14px;margin-top:22px}.gallery-controls button{height:48px;width:54px;background:rgba(246,248,240,.84);color:var(--ink);border:1px solid #c9d5c6;clip-path:var(--cut);cursor:pointer;display:flex;align-items:center;justify-content:center}.gallery-controls button svg{width:23px;height:23px}.gallery-controls button:disabled{opacity:.3;cursor:default}.gallery-controls button:focus-visible{outline:0;background:#d1dfca}.contact-main{padding:34px 0 41px;min-height:0}.contact-main>h1{font-size:44px;margin-bottom:28px}.contact-layout{display:block}.form-panel{padding:24px}.form-row{display:block}.form-field input,.form-field textarea{font-size:16px}.send-button{width:100%}.company-details{margin-top:34px;padding-top:23px}.company-details .contact-email{font-size:23px;margin-bottom:17px}.company-details p{font-size:17px}.legal-main{margin-left:24px;margin-right:24px;padding:35px 0 45px}.legal-content h1{font-size:38px;margin-bottom:28px}.legal-content h2{font-size:20px}.legal-content p{font-size:16px;line-height:1.85}.site-footer{padding:20px 0 25px}.site-footer p{font-size:12px;text-align:left}.success-inner{padding:29px}}@media(max-width:360px){.nav-link{font-size:13px;padding:0 4px;gap:5px}.site-header nav{gap:5px}.nav-link svg{width:14px;height:14px}.hero h1{font-size:53px}.hero p{font-size:20px}.form-panel{padding:19px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
