/* GRATYTATY — mobile-first static landing page */
:root{color-scheme:light;--bg:#fff;--ink:#1d2527;--muted:#637075;--dark:#171d1f;--dark-2:#222a2c;--line:#e3e7e7;--soft:#f3f5f4;--accent:#f4ae47;--accent-hover:#ffbf63;--shell:1240px;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}::selection{background:#f7cb86;color:#172023}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}p{overflow-wrap:break-word}.shell{width:min(calc(100% - 36px),var(--shell));margin-inline:auto}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:absolute;z-index:1000;left:12px;top:-90px;padding:12px 18px;border-radius:8px;background:var(--accent);font-weight:800;color:#111}.skip-link:focus{top:12px}.icon{height:20px;width:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.site-header{position:sticky;top:0;z-index:90;background:var(--dark);border-bottom:1px solid rgba(255,255,255,.1)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:14px;position:relative}.brand{display:inline-flex;align-items:center;gap:11px;flex:none;color:#fff}.brand-word{font-weight:900;letter-spacing:-.065em;font-size:clamp(21px,4.8vw,25px);line-height:1}.brand-dot,.footer-brand span{color:var(--accent)}.brand-mark{display:flex;flex-direction:column;gap:4px;width:26px;transform:skewY(-18deg)}.brand-mark span{height:5px;width:100%;background:var(--accent);clip-path:polygon(20% 0,100% 0,80% 100%,0 100%)}.brand-mark span:nth-child(2){opacity:.75}.brand-mark span:nth-child(3){opacity:.5}.header-actions{display:flex;align-items:center;gap:9px}.language-switch{display:flex;align-items:center;gap:1px;color:#6c7677;border:1px solid #4d5557;border-radius:7px;padding:2px;white-space:nowrap}.language-switch>span{font-size:12px}.lang-option{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:#a9b2b5;border:0;border-radius:5px;font-size:12px;font-weight:800;min-width:37px;min-height:44px;padding:0 5px}.lang-option.is-active{background:#f3f4f4;color:#151a1b}.menu-toggle{display:grid;place-content:center;gap:5px;height:44px;width:44px;border:1px solid #465052;border-radius:8px;background:transparent;color:#fff}.menu-toggle span{display:block;width:19px;height:2px;background:currentColor;border-radius:2px}.main-nav{display:none;position:absolute;top:calc(100% + 1px);left:-18px;right:-18px;background:#22292b;box-shadow:0 18px 32px #0b0f1080;padding:16px 18px 22px;flex-direction:column;gap:3px}.main-nav.is-open{display:flex}.main-nav a{display:flex;align-items:center;padding:12px 15px;min-height:44px;color:#edf0f0;font-size:14px;font-weight:650;border-radius:7px}.main-nav a:hover,.main-nav a:focus-visible{background:#353f41}
.hero{background:var(--dark);color:#fff;padding:49px 0 66px;overflow:hidden}.hero-grid{display:grid;gap:44px}.hero-copy{align-self:center}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.18em;color:#9e6d25;margin-bottom:17px;line-height:1.6}.eyebrow--light{color:var(--accent)}.hero h1{font-weight:900;font-size:clamp(43px,10.3vw,73px);line-height:1.05;letter-spacing:-.065em;max-width:680px}.hero h1 span{display:block}.accent-text{color:var(--accent)}.hero-lead{font-weight:700;font-size:clamp(19px,4.4vw,24px);line-height:1.45;letter-spacing:-.022em;max-width:580px;margin-top:26px;color:#f1f4f3}.hero-desc{margin-top:16px;font-size:15px;color:#b6c0c2;max-width:560px;line-height:1.8}.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:11px;min-height:52px;padding:12px 20px;border-radius:8px;font-size:12px;font-weight:900;letter-spacing:.065em;text-align:center;line-height:1.4;transition:background .18s,transform .18s,border-color .18s}.btn .icon{height:18px;width:18px}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--accent);color:#141819}.btn--primary:hover{background:var(--accent-hover)}.btn--ghost{border:1px solid #546062;background:transparent;color:white}.btn--ghost:hover{background:#293234;border-color:#9ba3a3}.btn--dark-outline{border:1px solid #c9cdcd;background:transparent;color:var(--ink)}.btn--dark-outline:hover{border-color:#1d2527;background:#ecefee}.hero-ctas .btn{flex:1 1 170px}.hero-footnote{display:flex;gap:10px;align-items:center;margin-top:25px;color:#89999b;font-size:12px}.tiny-pulse{flex:none;width:7px;height:7px;background:var(--accent);border-radius:50%}.hero-visual{min-width:0;align-self:center}.hero-visual picture{display:block;border-radius:14px 14px 0 0;overflow:hidden;background:#242d2e}.hero-visual img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:cover}.hero-photo-base{display:flex;justify-content:space-between;align-items:center;border-radius:0 0 14px 14px;padding:13px 17px;background:#313a3c;color:#e0e5e4;font-size:10px;font-weight:800;letter-spacing:.1em}.hero-photo-base b{color:var(--accent);padding-inline:3px}.photo-lines{width:20px;height:14px;border-top:2px solid var(--accent);border-bottom:2px solid var(--accent);position:relative}.photo-lines:after{content:"";position:absolute;top:5px;width:100%;border-top:2px solid var(--accent)}
.section{padding:79px 0}.section--soft{background:var(--soft)}.section-head{display:grid;gap:15px;align-items:end;margin-bottom:34px}.section-head .eyebrow,.section-head--stack .eyebrow{margin-bottom:13px}.section-head--stack{display:block}.section-title{font-size:clamp(29px,6.7vw,47px);line-height:1.13;font-weight:890;max-width:760px}.section-intro{font-size:15px;color:var(--muted);line-height:1.8;max-width:550px}.section-head--stack .section-intro{margin-top:17px}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.service-card{position:relative;border:1px solid var(--line);border-radius:12px;padding:20px 15px;min-height:200px;background:#fff;transition:box-shadow .18s,transform .18s}.service-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #1b262617}.service-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#f6f0e7;border-radius:9px;color:#a76820;margin-bottom:21px}.service-icon .icon{width:24px;height:24px}.service-num{position:absolute;top:23px;right:16px;color:#aab3b6;font-size:10px;font-weight:800;letter-spacing:.08em}.service-card h3{font-size:15px;letter-spacing:-.03em;margin-bottom:9px;max-width:200px}.service-card p{font-size:12px;color:var(--muted);line-height:1.65}.helper-note{display:flex;align-items:flex-start;gap:13px;margin-top:24px;padding:18px 20px;background:#f7f8f7;border-left:3px solid var(--accent);border-radius:0 8px 8px 0;font-size:13px;font-weight:600;line-height:1.7}.helper-note .icon{color:#bd751f;margin-top:1px}.materials-grid{display:grid;gap:15px}.material-card{display:flex;flex-direction:column;min-height:308px;padding:29px 26px;background:white;border:1px solid #e0e4e4;border-radius:13px}.material-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:35px}.material-number{color:#a0aaaa;font-size:11px;letter-spacing:.06em;font-weight:750}.material-chip{border:1px solid #d7dddd;border-radius:100px;color:#6e7779;font-size:9px;font-weight:850;letter-spacing:.09em;padding:5px 10px;white-space:normal;text-align:center}.material-card h3{font-size:clamp(29px,6vw,40px);letter-spacing:-.05em;margin-bottom:17px}.material-desc{font-size:14px;color:#647075;line-height:1.75}.material-use{border-top:1px solid #e5e8e8;padding-top:17px;margin-top:auto;color:#6d787b;font-size:11px;font-weight:750}.material-card--special{border-color:#2b3538;background:#232b2d;color:#fff}.material-card--special .material-chip{border-color:#626b6c;color:#e4ab56}.material-card--special .material-desc{color:#b9c3c5}.material-card--special .material-use{border-color:#434d4e;color:#ccd4d5}.material-card--special .material-number{color:#859294}.slash{color:var(--accent)}.materials-note{margin-top:22px;font-size:14px;color:#526064;font-weight:600}
.practical-grid{display:grid;gap:39px;align-items:center}.practical-photo{position:relative}.practical-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.photo-corner{position:absolute;bottom:-12px;right:-12px;height:68px;width:68px;border-right:5px solid var(--accent);border-bottom:5px solid var(--accent);border-radius:0 0 10px 0;pointer-events:none}.practical-copy .section-title{max-width:570px}.practical-lead{font-size:18px;line-height:1.65;font-weight:650;margin-top:23px;max-width:550px}.check-list{list-style:none;padding:0;margin:25px 0;display:grid;gap:12px}.check-list li{display:flex;align-items:start;gap:12px;font-weight:700;font-size:14px}.check-list li>span:first-child{color:#ad6d23;font-weight:900}.practical-text{font-size:14px;color:var(--muted);line-height:1.8;max-width:600px}.text-link{display:inline-flex;align-items:center;gap:10px;border-bottom:2px solid var(--accent);padding:0 1px 5px;font-weight:850;font-size:12px;letter-spacing:.04em;margin-top:24px}.text-link .icon{height:18px;width:18px;transition:transform .16s}.text-link:hover .icon{transform:translateX(4px)}
.gallery{padding-top:32px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-item{position:relative;overflow:hidden;border-radius:10px;background:#e1e5e3;min-width:0}.gallery-item img{width:100%;height:180px;object-fit:cover;transition:transform .3s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item figcaption{display:block;min-height:47px;background:#f3f5f4;padding:13px 12px;font-size:12px;font-weight:750;line-height:1.4}.gallery-item--mechanical img{object-position:center 58%}.gallery-item--functional img{object-position:center center}.gallery-item--moon img{object-position:center center}.gallery-note{font-size:11px;color:#788588;margin-top:15px}.process-grid{list-style:none;margin:0;padding:0;display:grid;gap:14px}.process-step{background:#fff;border:1px solid var(--line);border-radius:11px;padding:25px 23px}.step-no{display:flex;align-items:center;gap:14px;color:#b16e20;font-size:24px;font-weight:800;letter-spacing:-.04em;margin-bottom:23px}.step-line{height:1px;flex:1;background:#e5e9e8}.process-step h3{font-size:16px;margin-bottom:9px}.process-step p{font-size:13px;color:var(--muted);line-height:1.65}
.oneoff{background:var(--dark-2);color:#fff;padding:72px 0}.oneoff-inner{display:grid;gap:32px;align-items:center}.oneoff-heading{font-size:clamp(32px,7vw,54px);font-weight:900;max-width:810px}.oneoff-lead{margin-top:17px;font-size:16px;line-height:1.8;color:#c3cecf;max-width:770px}.oneoff .btn{justify-self:start}.faq-grid{display:grid;gap:16px}.faq-aside{padding-bottom:10px}.faq-side-detail{margin-top:30px;font-size:14px;color:#a5acad;font-weight:800;letter-spacing:.13em}.faq-items{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{list-style:none;display:flex;align-items:center;min-height:77px;gap:16px;padding:14px 0;cursor:pointer;font-weight:730;font-size:15px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::marker{content:""}.faq-count{font-size:11px;font-weight:800;color:#9a6b37;min-width:23px}.faq-question{flex:1}.faq-plus{flex:none;width:25px;height:25px;border:1px solid #d2d8d8;border-radius:50%;position:relative}.faq-plus:before,.faq-plus:after{position:absolute;content:"";height:1px;width:11px;background:#4d5b5d;left:6px;top:11px}.faq-plus:after{transform:rotate(90deg);transition:transform .18s}.faq-item[open] .faq-plus{background:#f8eddc;border-color:#f3d7ae}.faq-item[open] .faq-plus:after{transform:rotate(0)}.faq-answer{padding:0 25px 23px 39px;color:var(--muted);font-size:14px;line-height:1.8}
.contact{padding:75px 0;background:#f2f4f3}.contact-grid{display:grid;gap:27px;align-items:center}.contact-lead{font-size:17px;line-height:1.7;margin-top:21px;max-width:570px}.contact-hint{font-size:13px;color:#708083;margin-top:12px}.contact-card{background:#fff;border:1px solid #e0e4e4;border-radius:13px;padding:25px 20px;box-shadow:0 10px 40px #101d1a0a}.contact-row{display:grid;gap:4px;padding-bottom:17px;margin-bottom:17px;border-bottom:1px solid var(--line)}.contact-label{font-size:10px;font-weight:850;color:#9b6829;letter-spacing:.1em}.contact-row>a{font-weight:800;font-size:clamp(17px,4vw,22px);overflow-wrap:anywhere;line-height:1.5}.contact-row>a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px}.contact-actions{display:grid;gap:9px}.site-footer{background:#141a1b;color:white;padding:44px 0 20px}.footer-main{display:grid;gap:25px;padding-bottom:35px}.footer-brand{display:inline-block;font-size:25px;font-weight:900;letter-spacing:-.06em}.footer-main p{margin-top:8px;color:#aab6b8;font-size:13px}.footer-contact{display:grid;gap:8px;color:#e4eaea;font-size:14px}.footer-contact a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid #333d3f;display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:space-between;padding-top:17px;color:#899798;font-size:11px}
@media(min-width:480px){.hero-ctas .btn{flex:0 0 auto}.contact-actions{grid-template-columns:1fr 1fr}.gallery-item img{height:235px}}
@media(min-width:640px){.shell{width:min(calc(100% - 56px),var(--shell))}.hero{padding:75px 0 85px}.services-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.service-card{min-height:220px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-item img{height:220px}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-main{grid-template-columns:1fr 1fr}.footer-contact{text-align:right;justify-items:end}}
@media(min-width:920px){.header-inner{min-height:82px}.menu-toggle{display:none}.main-nav,.main-nav.is-open{display:flex;position:static;flex-direction:row;align-items:center;box-shadow:none;padding:0;gap:17px;background:none;flex:1;justify-content:center}.main-nav a{padding:10px 0;color:#c9d0d1;font-size:12px;font-weight:730;white-space:nowrap}.main-nav a:hover{background:transparent;color:#fff}.main-nav a:focus-visible{background:transparent}.hero{padding:86px 0 96px}.hero-grid{grid-template-columns:1fr 1fr;gap:48px}.hero h1{font-size:clamp(47px,5vw,71px)}.hero-visual img{aspect-ratio:5/5;object-position:71% center}.section{padding:100px 0}.section-head{grid-template-columns:1.25fr .75fr;gap:55px;margin-bottom:42px}.section-head--stack{display:block}.section-head--stack .section-intro{margin-top:16px}.services-grid{gap:16px}.service-card{padding:25px 22px;min-height:238px}.service-card h3{font-size:17px}.service-card p{font-size:13px}.materials-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.material-card{padding:31px 28px;min-height:370px}.practical-grid{grid-template-columns:1fr 1fr;gap:65px}.practical-photo img{aspect-ratio:4/4.25}.gallery{padding-top:35px}.gallery-grid{gap:16px}.gallery-item img{height:225px}.gallery-item figcaption{padding:16px;font-size:13px}.process-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.process-step{padding:23px 17px;min-height:225px}.process-step h3{font-size:15px}.oneoff{padding:86px 0}.oneoff-inner{grid-template-columns:1fr auto;gap:30px}.faq-grid{grid-template-columns:0.38fr 0.62fr;gap:65px}.contact{padding:98px 0}.contact-grid{grid-template-columns:1fr 1fr;gap:60px}.contact-card{padding:35px 36px}.footer-main{padding-bottom:45px}.site-footer{padding-top:55px}}
@media(min-width:1200px){.main-nav{gap:27px}.main-nav a{font-size:13px}.hero-grid{grid-template-columns:.97fr 1.03fr;gap:68px}.hero-visual img{aspect-ratio:1.18/1}.hero h1{font-size:72px}.hero-lead{font-size:24px}.hero-desc{font-size:16px}.service-card{min-height:255px}.gallery-item img{height:255px}.process-step{padding:28px 23px}}
@media(max-width:359px){.shell{width:calc(100% - 28px)}.brand-word{font-size:19px}.brand-mark{width:21px}.header-actions{gap:6px}.language-switch{padding:1px}.lang-option{min-width:31px}.services-grid{gap:8px}.service-card{padding:17px 12px}.hero h1{font-size:41px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
