/* Quiet pill controls, a blue pencil finish, and one consistent input grid. */
:root{--control-height:56px;--control-border:#cbd3d0;--control-fill:#fffefa}
.btn,.btn.blue,.btn.outline,.back-button,.card-open,.filter-chip{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:12px 23px;border:1px solid var(--control-border);border-radius:999px;background:transparent;color:var(--ink);font-size:15px;font-weight:500;line-height:1.35;text-decoration:none;transition:color .2s,border-color .2s,background-color .2s}
.btn::before,.back-button::before,.card-open::before,.filter-chip::before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;background:repeating-linear-gradient(163deg,transparent 0 2px,#ffffff24 2px 3px,transparent 3px 5px),repeating-linear-gradient(17deg,transparent 0 6px,#ffffff13 6px 7px),var(--blue);clip-path:inset(0 100% 0 0);transition:clip-path .32s ease}
.btn:hover,.btn.blue:hover,.btn.outline:hover,.back-button:hover,.card-open:hover,.filter-chip:hover,.btn:focus-visible,.back-button:focus-visible,.card-open:focus-visible,.filter-chip:focus-visible,.btn:active,.back-button:active,.card-open:active,.filter-chip:active{background:transparent;border-color:var(--blue);color:#fff}
.btn:is(:hover,:focus-visible,:active)::before,.back-button:is(:hover,:focus-visible,:active)::before,.card-open:is(:hover,:focus-visible,:active)::before,.filter-chip:is(:hover,:focus-visible,:active)::before{clip-path:inset(0)}
.btn:focus-visible,.back-button:focus-visible,.card-open:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.btn:disabled{opacity:.5;cursor:wait}.btn:disabled::before{display:none}
.field{gap:9px}.field label{font-size:14px;line-height:1.4;margin:0;color:#586a6c}
.field input:not([type=checkbox]),.field select{box-sizing:border-box;width:100%;height:var(--control-height);min-height:var(--control-height);padding:0 17px;border:1px solid var(--control-border);border-radius:12px;background-color:var(--control-fill);font-size:16px;line-height:normal;appearance:none;-webkit-appearance:none}
.field select{padding-right:43px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18'%3E%3Cpath d='m5 7 4 4 4-4' fill='none' stroke='%23586a6c' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;cursor:pointer}
.field input:focus,.field select:focus{outline:2px solid var(--blue);outline-offset:2px;border-color:var(--blue)}
.field input::placeholder{color:#74817e;opacity:1}
input[type=number]{appearance:textfield;-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.catalog-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px;align-items:end}
.catalog-fields .filter-submit{height:var(--control-height);min-height:var(--control-height);width:100%;font-size:16px;margin:0}
.catalog-filter{padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.catalog-head{padding:24px 0 30px}.catalog-head .eyebrow{font-size:12px}
.catalog-toolbar{align-items:center;gap:24px;padding:28px 0}
.sort-tools{gap:22px;align-items:center}.sort-tools .text-link{font-size:14px}.sort-field{display:flex;flex-direction:row;align-items:center;gap:12px}.sort-field label{white-space:nowrap}.sort-tools .sort-field select{width:235px;max-width:none;font-size:15px;height:48px;min-height:48px;background-color:transparent;padding:0 42px 0 17px}
.active-filters{margin-top:8px}.filter-chip{font-size:13px;min-height:36px;padding:7px 13px}
.page-navigation{padding-top:24px}.page-navigation nav{display:flex;justify-content:space-between;align-items:center;gap:18px}.back-button{min-height:42px;padding:10px 17px;font-size:14px;border-color:transparent;background:#edf0eb}.home-return{font-size:14px;color:#586a6c;padding:12px}.page-navigation .btn{font-size:14px;min-height:42px;padding:10px 20px}
.home-caption .all-yachts-button{font-size:16px;min-width:160px;min-height:50px;text-decoration:none;color:var(--ink)}.home-caption .all-yachts-button:is(:hover,:focus-visible,:active){color:white}
.home-search{border-radius:34px;padding:6px 6px 6px 16px}.home-search .btn{border-radius:999px;min-height:48px;font-size:15px}.home-search input{border-radius:24px}
.card-open{margin-top:20px;width:100%;font-size:14px;min-height:44px;padding:10px 20px}.card-open span:empty{display:none}
.yard-logo{display:block;width:clamp(220px,27vw,390px);height:90px;object-fit:contain;object-position:left center}.yard-logo.riva{width:260px;height:110px}
.shipyard-wordmark{display:block}.yard-logo.ferretti,.yard-logo.riva{filter:brightness(0)}
.shipyard-wordmark.princess{width:290px;height:70px;overflow:hidden}.yard-logo.princess{width:290px;height:auto;max-width:none;object-fit:initial}
.shipyard-story{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;padding:0 0 35px;max-width:1110px}.shipyard-story p{margin:0;font-size:16px;line-height:1.8;color:#596b6c}.shipyard-story .yard-perspective{color:var(--ink)}
.page-navigation+.container .page-head{padding-top:25px}
@media(max-width:1000px){.catalog-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.shipyard-story{gap:30px}.sort-tools{gap:14px}}
@media(max-width:760px){:root{--control-height:54px}.catalog-fields{gap:20px 14px}.catalog-head{padding:20px 0 24px}.catalog-head .eyebrow{font-size:11px}.catalog-filter{padding:24px 0}.catalog-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:18px;padding:24px 0}.sort-tools{display:flex;justify-content:space-between;margin:0;align-items:end}.sort-field{flex-direction:column;align-items:stretch;gap:8px}.sort-tools .sort-field select{width:220px;font-size:14px}.page-navigation{padding-top:16px}.page-navigation nav{gap:12px}.btn,.btn.blue,.btn.outline{font-size:14px;padding:12px 20px;min-height:46px}.home-search .btn{font-size:14px;min-width:115px}.home-caption .all-yachts-button{font-size:15px;min-width:140px;min-height:48px}.shipyard-story{grid-template-columns:1fr;gap:16px;padding-bottom:28px}.shipyard-story p{font-size:15px;line-height:1.75}.yard-logo{height:70px;width:260px}.yard-logo.riva{height:90px;width:220px}.field label{font-size:14px}.field input:not([type=checkbox]),.field select{font-size:16px;padding-left:13px}.field select{padding-right:35px;background-position:right 12px center}}
@media(max-width:480px){.catalog-fields{grid-template-columns:1fr}.catalog-fields .filter-submit{margin-top:4px}.sort-tools .sort-field select{width:210px}.home-search{padding-left:7px}.home-search input{font-size:15px}.page-navigation .btn{padding:10px 16px}.home-caption .all-yachts-button{min-width:135px}}
@media(prefers-reduced-motion:reduce){.btn,.back-button,.card-open,.filter-chip,.btn::before,.back-button::before,.card-open::before,.filter-chip::before{transition:none}}
