.main-content{margin-top:30px}.global-nav{width:100%;min-height:60px;height:auto;background:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:fixed;top:0;z-index:1000;border-bottom:1px solid #e5e5e5}.global-nav .nav-bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:10px 40px;min-height:60px;box-sizing:border-box}.global-nav .nav-logo{justify-self:start;flex:0 0 auto;font-weight:800;font-size:1.2rem;letter-spacing:.05em}.global-nav .nav-logo a{color:#0a2a66;text-decoration:none;white-space:nowrap}.global-nav .nav-desktop-links{justify-self:center;justify-content:center}.global-nav .nav-end{justify-self:end;display:flex;align-items:center;gap:12px}.global-nav .nav-desktop-locales{display:block}.global-nav .nav-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 28px}.global-nav .nav-links a{color:#0a2a66;text-decoration:none;font-size:.95rem;font-weight:500;transition:opacity .2s;white-space:nowrap;flex:0 0 auto}.global-nav .nav-links a:hover{opacity:.6}.global-nav .nav-links a.is-active{font-weight:700;opacity:1;box-shadow:inset 0 -2px 0 #0a2a66}.global-nav .nav-burger{display:none;width:40px;height:40px;border:0;background:rgba(0,0,0,0);cursor:pointer;padding:8px;flex-direction:column;justify-content:center;gap:6px}.global-nav .nav-burger span{display:block;height:2px;width:100%;background:#0a2a66;transition:transform .2s,opacity .2s}.global-nav .nav-mobile-panel{display:none}@media(max-width:1100px){.global-nav .nav-bar{padding:10px 24px}.global-nav .nav-links{gap:8px 18px}.global-nav .nav-links a{font-size:.9rem}}@media(max-width:860px){.global-nav .nav-bar{display:flex;justify-content:space-between;padding:8px 16px}.global-nav .nav-desktop-links{display:none}.global-nav .nav-burger{display:flex}.global-nav .nav-mobile-panel{display:none;flex-direction:column;gap:16px;padding:8px 16px 20px;border-top:1px solid #e5e5e5;background:rgba(255,255,255,.98)}.global-nav .nav-mobile-panel .nav-links{flex-direction:column;align-items:stretch;gap:4px}.global-nav .nav-mobile-panel .nav-links a{padding:12px 8px;font-size:1rem}.global-nav.is-open .nav-mobile-panel{display:flex}.global-nav.is-open .nav-burger span:first-child{transform:translateY(8px) rotate(45deg)}.global-nav.is-open .nav-burger span:nth-child(2){opacity:0}.global-nav.is-open .nav-burger span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}}.last-message-section .svg-background{position:absolute;top:0;left:0;width:100%;z-index:1}.last-message-section .message-content{position:relative;z-index:2;padding:10% 0 0 10%;max-width:600px;color:#333}.last-message-section .message-content .catchphrase{font-size:3rem;font-weight:800;line-height:1.2;margin-bottom:2rem;letter-spacing:.05em}.last-message-section .message-content .brand-definition,.last-message-section .message-content .description{font-size:1.1rem;line-height:1.8;margin-bottom:1.5rem}.last-message-section.is-narrow .message-content{padding:8% 5% 0;max-width:none;width:90%;box-sizing:border-box}.last-message-section.is-narrow .message-content .catchphrase{font-size:1.75rem;margin-bottom:1.25rem}.last-message-section.is-narrow .message-content .brand-definition,.last-message-section.is-narrow .message-content .description{font-size:.95rem;line-height:1.7;overflow-wrap:anywhere;word-break:break-word;max-width:36em}.last-message-section.is-p6 .message-content .catchphrase{font-size:1.5rem}.last-message-section.is-p6 .message-content .brand-definition,.last-message-section.is-p6 .message-content .description{font-size:.88rem}.company-info{position:absolute;width:300px;bottom:30%;right:18%;z-index:2;color:#fff;text-align:left;display:flex;flex-direction:column;gap:1rem}.company-info .info-header{position:relative}.company-info .info-header .est{position:absolute;font-size:.75rem;letter-spacing:.2em;opacity:.8;display:block;top:-15px;left:0}.company-info .info-header .company-name{font-size:2rem;font-weight:700;margin:0}.company-info .social-links{display:flex;gap:.7rem}.company-info .social-links a{color:#fff;transition:transform .2s ease,opacity .2s ease}.company-info .social-links a:hover{transform:translateY(-3px);opacity:.8}.contact-wrapper{max-width:640px;margin:0 auto;padding:3rem 1rem}.contact-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:24px;box-shadow:0 6px 16px rgba(0,0,0,.05)}.contact-title{margin-bottom:20px;font-size:22px;font-weight:600}.form-group{margin-bottom:16px}.form-label{display:block;font-size:14px;margin-bottom:6px;font-weight:500}.form-input,.form-textarea{width:100%;font-size:14px;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;outline:none;transition:border-color .15s,box-shadow .15s}.form-input:focus,.form-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 2px rgba(37,99,235,.15)}.form-textarea{resize:vertical;min-height:140px}.hint{font-size:12px;color:#6b7280;margin-top:4px}.honeypot{display:none}.form-actions{padding-top:8px;text-align:right}.button-submit{background:#111827;color:#fff;border:none;padding:10px 18px;border-radius:10px;cursor:pointer;font-size:13px}.button-submit:disabled{opacity:.6;cursor:not-allowed}.success{color:#059669}.error,.success{margin-top:14px;font-size:13px}.error{color:#dc2626}.site-footer{width:100%;margin-top:4rem;border-top:1px solid #e5e7eb;background:#f8fafc}.site-footer .footer-inner{max-width:1200px;margin:0 auto;padding:2.5rem 1rem 2rem;color:#374151}.site-footer .footer-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.site-footer .footer-grid{grid-template-columns:1.2fr 1fr 1fr 1fr;gap:2.5rem}}.site-footer .footer-brand .footer-logo{font-size:1rem;font-weight:700;color:#111827;letter-spacing:.01em}.site-footer .footer-brand .footer-description{margin-top:.75rem;line-height:1.7;color:#4b5563;font-size:.92rem;max-width:340px}.site-footer .footer-brand .footer-meta{margin-top:.9rem;font-size:.88rem;color:#6b7280}.site-footer .footer-column .footer-heading{margin-bottom:.9rem;font-size:.85rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#111827}.site-footer .footer-links{display:flex;flex-direction:column;gap:.65rem}.site-footer .footer-links a{color:#374151;text-decoration:none;font-size:.94rem;line-height:1.5;transition:color .2s ease}.site-footer .footer-links a:hover{color:#111827;text-decoration:underline}.site-footer .footer-bottom{margin-top:2rem;padding-top:1rem;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:#6b7280}@media(min-width:768px){.site-footer .footer-bottom{flex-direction:row;gap:1rem;flex-wrap:wrap}}.skillsSection{padding:8vw 5vw;color:#333;line-height:1.6}.skillsSection .container{max-width:1200px;margin:0 auto}.skillsSection .title{font-size:2.5rem;margin-bottom:3rem;letter-spacing:.1rem;border-left:4px solid #000;padding-left:1.5rem}.skillsSection .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:4vw;margin-bottom:5rem}.skillsSection .card{background:rgba(255,255,255,.5);padding:2.5rem;border:1px solid #eee;border-radius:4px;transition:transform .3s ease}.skillsSection .card:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,.05)}.skillsSection .card h3{font-size:1.5rem;margin-bottom:1.5rem;color:#000;border-bottom:1px solid #ddd;padding-bottom:.5rem;display:inline-block}.skillsSection .card .description{font-size:.95rem;margin-bottom:1.5rem;color:#666}.skillsSection .card .list{list-style:none;padding:0}.skillsSection .card .list li{margin-bottom:.8rem;padding-left:1.2rem;position:relative;font-size:1rem}.skillsSection .card .list li:before{content:"・";position:absolute;left:0;font-weight:700}.skillsSection .card .list li strong{color:#000;font-weight:600}.skillsSection .philosophy{text-align:center;max-width:800px;margin:0 auto;padding:3rem;background:#f9f9f9;border-radius:8px}.skillsSection .philosophy blockquote{font-size:2rem;font-weight:700;margin-bottom:2rem;font-style:italic;color:#111}.skillsSection .philosophy blockquote:after,.skillsSection .philosophy blockquote:before{content:'"';color:#ccc}.skillsSection .philosophy p{margin-bottom:1.5rem;font-size:1.1rem}.skillsSection .philosophy .cta{margin-top:2rem;padding-top:1.5rem;border-top:1px dashed #ccc;font-size:1.2rem;color:#000;line-height:1.8}@media(max-width:768px){.skillsSection{padding:15vw 5vw}.skillsSection .title{font-size:1.8rem}.skillsSection .philosophy blockquote{font-size:1.5rem}.skillsSection .philosophy .cta{font-size:1rem}}.legal-page{padding:48px 16px 88px}.legal-page__inner{max-width:860px;margin:0 auto;color:#111827}.legal-page__header{margin-bottom:36px}.legal-page__title{margin:0;font-size:clamp(28px,4vw,36px);line-height:1.2;letter-spacing:-.02em;color:#111827}.legal-page__lead{margin:16px 0 0;font-size:16px;line-height:1.85;color:#4b5563;max-width:760px}.legal-page__content{display:flex;flex-direction:column;gap:30px}.legal-section{padding-top:4px}.legal-section__title{margin:0 0 12px;font-size:22px;line-height:1.4;letter-spacing:-.01em;color:#111827}.legal-section__body{color:#374151;font-size:15px;line-height:1.9}.legal-section__body p{margin:0}.legal-section__body p+p{margin-top:12px}.legal-section__body ul{margin:10px 0 0;padding-left:1.25rem}.legal-section__body li+li{margin-top:.45rem}.legal-section__body strong{color:#111827;font-weight:600}.legal-section__body a{color:#111827;text-decoration:underline;text-underline-offset:2px}.info-box{margin-top:14px;padding:18px;border:1px solid #e5e7eb;border-radius:14px;background:#f9fafb;display:grid;gap:10px}@media(max-width:767px){.legal-page{padding:36px 16px 72px}.legal-page__header{margin-bottom:28px}.legal-page__content{gap:24px}.legal-section__title{font-size:20px}}